天天看點

常見的指令

編譯指令

1 編譯環境

source build/envsetup.sh          //搭建編譯環境
//目前bash環境下讀取并執行FileName中的指令
lunch    (選數字)full_len6737t_66_sh_n-userdebug   //選擇編譯工程      

2  全部編譯

全部編譯   make  -j24     或者 make -j24 2>&1      

3 部分編譯

find ./  -exec touch {} \;  #目前./目錄下的所有檔案及子目錄下的檔案全部touch一遍
 git status | grep modified | awk '{print $2}'  | xargs -i touch {}
   #相當于把git status 裡的用modified 為字首的檔案全部touch一遍
 touch device/lentek/len6737t_66_sh_n/system.prop      

4 是否編譯成功

在編譯出來的out的目錄裡看
kernel: out\target\product\len6737t_66_sh_n\obj\KERNEL_OBJ\drivers\*
lk:     out\target\product\len6737t_66_sh_n\obj\BOOTLOADER_OBJ
pl:     out\target\product\len6737t_66_sh_n\obj\PRELOADER_OBJ      

5 更新檔案後編譯

5.1 更新檔案時間

find ./  -exec touch {} \;  #目前./目錄下的所有檔案及子目錄下的檔案全部touch一遍
 git status | grep modified | awk '{print $2}'  | xargs -i touch {}
   #相當于把git status 裡的用modified 為字首的檔案全部touch一遍
 touch device/lentek/len6737t_66_sh_n/system.prop      

懷疑檔案是否沒有編譯進去,又不能加 log 等部分 eg: 攝像頭效果檔案替換

5.2 删除同名檔案之後編譯

find ./out/ -name "\*imx230\*" | xargs -i rm {}  -rf   #在out目錄下删除檔案名中帶有"imx230"的檔案
  touch device/lentek/len6737t_66_sh_n/system.prop #每個工程路徑不同,但大同小異