【Android】MTK Android 編譯命令,androidmtk

來源:互聯網
上載者:User

【Android】MTK Android 編譯命令,androidmtk

命令格式:./maketek [option] [project] [action] [modules]


Option:


-t ,-tee :輸出log資訊到當前終端


-o , -opt=…… : 編譯附加條件,一般使用-opt=TARGET_BUILD_VARIANT=user來編譯使用者板軟體


-h ,help : 列印協助資訊並退出


Project : 工程名,例如:basicom72_wet_jb3


Action


n , new : 重新編譯整個工程


c , clean:清理編譯時間copy的檔案及log資訊


r , remake:整個工程檢查修改部分並編譯


listp , listproject: 查看目前所有的project


codegen : 產生database


nandgen : 產生nand_device_list.h (僅限使用nand flash 時使用)


check-env : 檢查編譯環境是否OK


check-dep :檢查功能依賴性


check-modem :檢查modem


update-modem :更新最新的modem.img 到system.img


mm : 用來編譯APK模組,如:./mk mm package/apps/deskclok


emigen : 產生flash相關檔案(custom_emi.c/.h)


modules:


編譯模組:preloader , uboot ,kernel , android


簡寫:pl , ub , k , dr


其他常用命令


./mk $project new 首次編譯需要寫出工程名稱,後續可以省略


./mk $project r(n) pl(/ub/k/dr) remake or new 單個模組,如:./mk r ub 編譯kernel時,需同時做打包到bootimage 操作,原因是kernel部分是最終打包到bootimage 裡面,然後燒錄進flash的


./mk bootimage/snod/systemimage 打包模組


./mk otapackage 編譯製作SD卡系統升級包,產生的zip包在out/target/product/project/目錄下


./mk banyan_addon 編譯MTK sdk 包


模組修改及對應的編譯命令


修改DWS 後,首先gencode 或者通過命令./mk drvgen 使其產生相應的.h/.c檔案,這個檔案會被preloader uboot kernel 調用,因此需要new preloader uboot kernel 而kernel 還需進一步./mk bootimage 打包


Preloader 快速編譯


修改以下目錄或檔案需要 ./mk r(n) pl


Mediatek/platform/$platform/preloader/…


Mediatek/custom/$platform/preloader/…


Mediatek/custom/common/preloader/…


Mediatek/custom/$project/preloader/…


Mediatek/custom/$project/common/下的標頭檔


Mediatek/custom/$project/kernel/dct/下的標頭檔(cust_kpd.h,cust_gpio_usage.h)


Uboot 快速編譯


修改以下檔案或目錄需要./mk r(n) ub


Bootable/bootloader/uboot/…


Mediatek/platform/$platform/uboot/…


Mediatek/custom/$platform/ uboot /…


Mediatek/custom/common/ uboot /…


Mediatek/custom/$project/ uboot /…


Mediatek/custom/$project/common/下的標頭檔


Mediatek/custom/$project/kernel/dct/下的標頭檔(cust_kpd.h,cust_gpio_usage.h)


Mediatek/custom/common/kernel/lcm/inc/lcm_drv.h


Mediatek/custom/common/kernel/leds/inc/cust_leds.h


Kernel 快速編譯


修改以下檔案或者目錄需要./mk r(n) k 然後執行./mk bootimage打包成boot.img


Kernel/…


Mediatek/platform/$platform/kernel/…


Mediatek/source/kernel/…


Mediatek/custom/$platform/kernel/,.,,


Mediatek/custom/common/kernel/…


Mediatek/custom/$project/kernel/…


Mediatek/custom/$project/common/下的標頭檔


Mediatek/custom/common/hal/下的標頭檔


Mediatek/custom/$project/hal/下的標頭檔


./mk bootimage


打包產生$PRODUCT_OUT/boot.img


打包產生$PRODUCT_OUT/ramdisk.img


./mk recoveryimage


根據依賴會先產生boot.img


打包產生$PRODUCT_OUT/recovery.img


./mk snod/systemimage-nodeps


打包產生$PRODUCT_OUT/system.img 但不檢查任何依賴性


./mk systemimage


打包產生$PRODUCT_OUT/system.img 檢查任何依賴性


./mk cacheimage


打包產生$PRODUCT_OUT/cache.img


./mk userdataimage


打包產生$PRODUCT_OUT/userdata.img


./mk secroimage


打包產生$PRODUCT_OUT/secro.img


MTK編譯命令的問題

GPRS 通訊規則 MTK 如此編譯時間因為 .MAK檔案的名字為 XXX_GPRS.MAK GPRS代表了此系統的通訊規則為GPRS 還有GSM make 如此規定編譯規則為 xxx gprs new 或者 xxx gsm new 為的是方便編譯 以及讓開發人員知道系統基於的通訊規則
 
我在編譯android源碼的用到的幾個命令給我解釋一下?

mmm package/app/contacts 是把package/app/contacts 目錄下的連絡人編譯成APK,後兩個沒寫全把,remoute是掛載SD卡的,push是從電腦上向裝置上拷貝東西的。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.