Android模块编译命令
2019-04-11 本文已影响0人
锄禾豆
m、mm、mmm编译命令
命令来源:
在android源码目录下的build/envsetup.sh文件中,有相关描述:
- m: Makes from the top of the tree.
- mm: Builds all of the modules in the current directory.
- mmm: Builds all of the modules in the supplied directories.
备注:
m:编译所有的模块
mm:编译当前目录3下的模块,当前目录下要有Android.mk文件
mmm:编译指定路径下的模块,指定路径下要有Android.mk文件
前提:
想使用这些命令,需要在android源码根目录设置环境:
执行build/envsetup.sh 脚本
对比:
make编译命令
1.make 不带参数,就是编译整个系统,时间太长,除了初次使用外,后续不建议再使用。
2.make 带参数,也就是make 模块名称,这对于有相互依赖的模块很有帮助,因为它会自动再编译依赖模块,避免异常。
总之,make的缺点就是耗时长,但它可以将耦合的模块编译到。
场景分析
1.编译单模块的apk,可以使用mmm packages/apps/Settings
2.编译一些jar或so,可以使用make +模块名。例如,make framework、make services