怎样使用ninja编译系统编译我们的程序?

    使用ninja 配置自己的环境来使用ninja 构建程序 Android使用ninja Windows使用 调试 不使用VS 技巧 问题

Ninja的原意是忍者,忍者神龟的忍者,这里被google拿来用在他们的编译系统上,目标是替代make之类的构建器,因为他们觉得其它的构建器太慢了,为此他们做过对比,对于chrome之类的拥有几万个文件的超大程序来说,用ninja的话,几乎立即开始编译,而make几乎要等上个10秒钟才开始编译。

Ninja的另外一个特点,其实不是他娘的特点,就是独立于编译系统的输入文件,我想问下google大神,难道cmake的CMakeList.txt不是吗?

Google把别的编译系统比作高级语言,而把自己努力设计成更底层的汇编器,这样才能从指令层面来优化编译性能。 Ninja的的构建(build)文件是给人看的,但不是特别方便于手写。这些特点允许她快速评估递增构建。毕竟不是每次都要从头开始。

Ninjia的底层特性使得她更适合嵌入功能强大的构建系统。 通过gyp(哈哈,拿来的CMakeLists.txt),ninja可以构建Chrome和v8, node.js等等项目。通过cmake, ninja能够构建LLVM(虚拟机啊)以及KDE桌面等等。

怎样获取ninja?

github上有:git clone git://github.com/martine/ninja.git

或者我们在debian/ubuntu上可以这样:apt-get install ninja-build

部分参考:https://code.google.com/p/chromium/wiki/NinjaBuild

经验分享 程序员 微信小程序 职场和发展