Android: m, mm以及mmm編譯命令以及make snod的使用
1)編譯指定Package
Android源碼目錄下的build/envsetup.sh文件,描述編譯的命令
m: 編譯所有的模塊
mm: 編譯當前目錄下的模塊,當前目錄下要有Android.mk文件
mmm:編譯指定路徑下的模塊,指定路徑下要有Android.mk文件
要想使用這些命令,首先需要在android源碼根目錄執行. build/envsetup.sh 腳本設置環境
下面舉個例子說明,假設我要編譯android下的packages/apps/Settings模塊,當前目錄為源碼根目錄,方法如下:
usera@usera-desktop:~/workspace$ source build/envsetup.sh
usera@usera-desktop:~/workspace$ mmm packages/apps/Settings/
...
Processing target/product/generic/obj/APPS/SettingsTests_intermediates/package.apk
Done!
Install: out/target/product/generic/data/app/SettingsTests.odex
Install: out/target/product/generic/data/app/SettingsTests.apk
make:離開目錄“/home/usera/workspace”
或者
usera@usera-desktop:~/workspace$ source build/envsetup.sh
usera@usera-desktop:~/workspace$ cd packages/apps/Settings/
usera@usera-desktop:~/workspace/packages/apps/Settings$ mm
2)重新生成sysem.img
使用make snod,重新生成system.img
usera@usera-desktop:~/workspace$ make snod
make snod: ignoring dependencies
Target system fs image: out/target/product/generic/system.img
參考:http://blog.csdn.net/renzhi_zhang/article/details/8555429