目录
一、引言
二、Cmake的介绍
三、Ninja的介绍
四、Android.bp
五、Ninja常用工具
六、Ninja的生成
一、引言
之前我们已经了解了,在Android中,会使用Android.mk来编译生成目标文件并放入对应目录
Android其实也是一种Makefile,android中的编译系统也会将其翻译成Makefile后编译。
而Makefile对于比较大的项目有时候会比较慢,Google的程序员在开发Chrome的时候因为忍受不了Makefile的速度,自己重新开发出来一套新的控制编译的工具叫作Ninja,Ninja相对于Makefile这套工具更注重于编译速度。
从Android 7.0开始,默认使用ninja进行编译。 从Android 8.0后,默认启用Soong、Android.bp。 在开发过程中,以前最经常使用的mm、mma等单模块编译功能,现在变得及其耗时。
所以今天我们来了解下Ninja编译机制,而在此之前,我们先来看下另一种跨平台的安装(编译)工具–Cmake,在android以外的系统中,也可以用其来生存ninja文件
二、Cmake的介绍
你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MS nmake,BSD