南京淘宝网站设计公司校园网二手书交易网站建设
文章目录
- 1. mm
 - 示例
 
- 2. mmm
 - 示例
 
- 注意
 
在Android操作系统的源代码编译过程中,
mm和 
mmm是两个用于构建部分代码的常用命令。它们都属于Android build system提供的命令集合,但用途略有不同: 
 
1. mm
mm(make module)命令用于编译当前目录下的模块。当你使用mm时,它会找到当前目录对应的Android.mk或者Blueprints文件,并且只编译这个目录下定义的模块。- 例如,如果你正在一个应用程序的目录中,运行
mm将会编译这个应用程序及其依赖。 
示例
cd ~/android_new/SC17X-Android12/LA.QSSI.12.0.r1/
source build/envsetup.sh
lunch qssi-user
cd development/ky_ai/arnoldTestNdkDemo/SimpleJNI
mm
 

 
2. mmm
mmm(make module matches)命令与mm类似,也是用于编译特定的模块,但它允许你指定一个路径。这意味着你可以从任何地方执行mmm命令,并提供要编译模块的路径作为参数。- 例如,你可以在源码树的根目录运行
mmm some/path/来编译位于some/path/目录下的模块。 
示例
cd ~/android_new/SC17X-Android12/LA.QSSI.12.0.r1/
source build/envsetup.sh
lunch qssi-user
mmm development/ky_ai/arnoldTestNdkDemo/SimpleJNI
 

 
 
注意
这两个命令的主要区别在于它们的工作目录。mm假定你已经处于要编译模块的目录中,而mmm则允许你指定一个目录路径。这两个命令都只会编译指定的模块和必需的依赖,而不会编译整个Android系统。这样可以节省时间,因为不需要重新编译整个系统的所有组件。
使用这些命令的时候通常还会结合一些其他的选项,比如-j来指定并行编译的作业数,以加速编译过程。
请注意,随着Android系统版本的更新,编译系统和命令的具体细节可能会有所变化。以上信息基于我的知识截止日期(2023年),后续版本可能有所调整。
ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        
 ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ        ᅟᅠ
