1)編譯指定Package
Android源碼目錄下的build/envsetup.sh文件,描述編譯的命令
m: 編譯所有的模塊
mm: 編譯當前目錄下的模塊,當前目錄下要有Android.mk文件
mmm:編譯指定路徑下的模塊,指定路徑下要有Android.mk文件
下面舉個例子說明,假設我要編譯android下的packages/apps/Settings模塊,當前目錄爲源碼根目錄,方法如下:
rzzhang@rzzhang-desktop:~/workspace$ source build/envsetup.sh
rzzhang@rzzhang-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/rzzhang/workspace”
rzzhang@rzzhang-desktop:~/workspace$ source build/envsetup.sh
rzzhang@rzzhang-desktop:~/workspace$ cd packages/apps/Settings/
rzzhang@rzzhang-desktop:~/workspace/packages/apps/Settings$ mm
2)重新生成sysem.img
使用make snod,重新生成system.img
rzzhang@rzzhang-desktop:~/workspace$ make snod
make snod: ignoring dependencies
Target system fs image: out/target/product/generic/system.img