m:编译整个安卓系统

     makes from the top of the tree

mm:编译当前目录下的模块,当前目录下需要有Android.mk这个makefile文件,否则就往上找最近的Android.mk文件。

         builds all of the moudles in the current directory

         mma:当前目录新增或删除文件后,可以用mma重新编译。

mmm:编译指定路径下的模块,指定的路径下面需要有Android.mk这个makefile文件

             builds all of the moudles in the supplies directory

mmma:指定目录下新增或删除文件后,可以用mmma重新编译。 // 未全编译的情况系下,可以使用该命令单编译模块

 

mm、mmm是类似的,都是用来编译某些模块。

使用这些编译命令,首先需要在Android根目录下配置环境

#source  build/envsetup.sh         要确保当前根目录下有envsetup.sh脚本文件
#lunch ...                         对工程的选择
#cd (要编译模块所在的目录)
#mm(mma、mmm、mmma) -B -j2  2>&1    开始编译模块
注:-B表示编译模块的所有文件,-j2表示编译的时候开启两个线程,2>&1表示将错误切换到输出(输入为0,输出为1,错误为2)。  
   envsetup.sh脚本文件里包含vendorsetup.sh 、lunch、 m mm mmm的定义

 

mmm 和 mm 区别:

mmm package/apps/DeskClock

cd package/apps/DeskClock ,然后再mm

分类: Android

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐