您的位置:首页 > 移动开发 > Android开发

mtk Android 常用编译命令

2016-09-11 12:11 435 查看
认真看过的才转载的哈! 

很详细的总结了MTK平台的编译命令,包括修改模块时候的快速编译等。

——————————————————————————————————————————————————————

一、

命令格式:./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 打包

四、

快速编译

1、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)

2、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

3、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

4、其他打包命令:

./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 编译命令 Android