1.make -jX X表示數字,這個命令將編譯Android系統並生成鏡像,XX表示可以使用到的CPU核數,這在配置好的電腦上特別有用,公司的16核ubuntu服務器執行make -j16只要不到20分鍾,而雙核PC上需要4個小時! 2.make snod 這條命令將重新生成鏡像,消耗的時間很少,類似WinCE的makeimg過程,如果你修改了一些數據文件(如音樂、視頻)等文件時比較有用。 3.make cts 這條命令將編譯CTS套機,編譯出的結果放在out目錄對應版的data/app目錄下面。CTS測試時有用 4.make installclean 這條命令清除out目錄下對應板文件夾中的內容,也就是相當於make clean,通常如果改變了一些數據文件(如去掉)、最好執行以下make installclean,否則殘留在out目錄下的還會被打包進去。 5.mm/mm -B 開發調試中最喜歡這條命令了,在修改了的目錄下執行這條命令,就能智能地進行編譯,輸出的文件在通過adb推送到目標機,可以很方便地調試。 6.make sdk 這條命令可以生成可發布的SDK,目前還沒試過,據說需要JDK1.57.make Setting 可以單獨編譯setting這個模塊,目前還沒試,猜想是不是可以單獨編譯Email、Music這些模塊 8.make bootimage 用這條命令可以生成boot.img,這個鏡像文件中包含Linux Kernel,Ram disk,生成的boot.img只能通過fastboot進行燒寫,這在只修改了Linux內核的時候有用 9.make systemimage 同上,不過是生成system.img用的。
在Android源碼根目錄下,執行以下三步即可編譯android: source build/envsetup.sh #這個腳本用來設置android的編譯環境; lunch #選擇編譯目標 make #編譯android整個系統 android 系統平台開發長用到的命令 1.在 android 目錄 或者 alps 目錄下 source build/envsetup.sh 2.lunch命令其實是定義在build/envsetup.sh文件中的函數lunch提供的 (其中里面還提供了好多其他函數,以后慢慢補充) ========== m mm mmm make ================= 3. m(是對make命令的簡單封裝) 用來編譯所有模塊 4. make: 不帶任何參數則是編譯整個系統; make MediaProvider (在展訊的平台我用過這個命令)單個模塊編譯,會把該模塊及其依賴的其他模塊一起編譯(會搜索整個源代碼來定位MediaProvider模塊所使用的Android.mk文件,還要判斷該模塊依賴的其他模塊是否有修改) make installclean 這條命令清除out目錄下對應板文件夾中的內容,也就是相當於make clean,通常如果改變了一些數據文件(如去掉)、最好執行以下make installclean,否則殘留在out目錄下的還會被打包進去。 make bootimage 生成 boot.img make systemimage 生成 system.img make snod 這條命令將重新生成鏡像,消耗的時間很少,類似WinCE的makeimg過程,如果你修改了一些數據文件(如音樂、視頻)等文件時比較有用。 make cts 這條命令將編譯CTS套機,編譯出的結果放在out目錄對應版的data/app目錄下面。CTS測試時有用 5. mmm packages/providers/MediaProvider # 編譯指定目錄下的模塊,但不編譯它所依賴的其它模塊; mmm -B 強制重新編譯 6. mm # 編譯當前目錄下的模塊,它和mmm一樣,不編譯依賴模塊; mm -B 強制重新編譯 7. mma # 編譯當前目錄下的模塊及其依賴項 . mma -B 強制重新編譯
1.make -jX X表示數字,這個命令將編譯Android系統並生成鏡像,XX表示可以使用到的CPU核數,這在配置好的電腦上特別有用,公司的16核ubuntu服務器執行make -j16只要不到20分鍾,而雙核PC上需要4個小時! 2.make snod 這條命令將重新生成鏡像,消耗的時間很少,類似WinCE的makeimg過程,如果你修改了一些數據文件(如音樂、視頻)等文件時比較有用。 3.make cts 這條命令將編譯CTS套機,編譯出的結果放在out目錄對應版的data/app目錄下面。CTS測試時有用 4.make installclean 這條命令清除out目錄下對應板文件夾中的內容,也就是相當於make clean,通常如果改變了一些數據文件(如去掉)、最好執行以下make installclean,否則殘留在out目錄下的還會被打包進去。 5.mm/mm -B 開發調試中最喜歡這條命令了,在修改了的目錄下執行這條命令,就能智能地進行編譯,輸出的文件在通過adb推送到目標機,可以很方便地調試。 6.make sdk 這條命令可以生成可發布的SDK,目前還沒試過,據說需要JDK1.57.make Setting 可以單獨編譯setting這個模塊,目前還沒試,猜想是不是可以單獨編譯Email、Music這些模塊 8.make bootimage 用這條命令可以生成boot.img,這個鏡像文件中包含Linux Kernel,Ram disk,生成的boot.img只能通過fastboot進行燒寫,這在只修改了Linux內核的時候有用 9.make systemimage 同上,不過是生成system.img用的。