Android MTK 编译命令

195 阅读2分钟

注意:

编译一般分为两个版本 eng(工程版本) 一般用来调试和测试带Root权限,这个版本编译时直接 ./mk   xx(命令)

另一版本 user(用户版本) 一般是发版软件

./mk-o=TARGET_BUILD_VARIANT=user xx(命令)

如果两个混合编译了如果是user版本时编译了eng版本的命令工程就GG了 只能 new 全部编译 驱动 内核 应用 耗时至少一个半小时

Eng: ./mk  project_name  new

User:./mk  -o=TARGET_BUILD_VARIANT=user project_name  new

MTK:

./mk -help  列出所有命令 或者 ./mk –h

./mk clean 清理工程 或者./mk c

./mk listp 得到当前工程名称列表

./mk project_name r 检索系统全改变部分 不包含 projectConfig.mk文件  编译

./mk project_name r lk k bootimage  编译驱动部分 打包成boot.img (组合命令)

./mk bootimage  打包驱动成boot.img

./mk r k  编译内核

编译应用

./mk mm  packeages/app/AppName

./mk mma  packeages/app/AppName 外置jar包的例如Gallery2和Launcher3等

一般编译完成后配合 ./mk snod 然后烧机即可

Android比较重要的三个img文件:

1    ./mk systemimage     -system.img全新编译耗时较长

2    ./mk userdataimage    - userdata.img 用户数据

3    ./mk ramdisk         - ramdisk.img  Ram

4    ./mk  snod           - 快速打包system.img

OTA差分包生成命令

./mk -o=TARGET_BUILD_VARIANT=user project_name   otapackage

1: ./mk n(r) kernel; ./mk bootimage;当修改kernel相关代码时,具体如下:

alps/kernel/

alps/mediatek/platform/mt65xx/kernel/

alps/mediatek/source/kernel/

alps/mediatek/customer/mt65xx/kernel/

alps/mediatek/customer/common/kernel/

alps/mediatek/customer/porject_nameporject\_name/kernel

......

2: ./mk n pl 当修改preloader相关代码时,具体如下:

alps/mediatek/platform/mt65xx/preloader/

alps/mediatek/source/preloader/

alps/mediatek/customer/mt65xx/preloader/

alps/mediatek/customer/common/preloader/

alps/mediatek/customer/porject_nameporject\_name/kernle

......

3: ./mk uboot 当修改uboot相关代码时,具体如下:

alps/mediatek/platform/mt65xx/uboot/

alps/mediatek/source/uboot/

alps/bootable/bootloader/uboot/

alps/mediatek/customer/mt65xx/uboot/

alps/mediatek/customer/common/buoot/

alps/mediatek/customer/porject_nameporject\_name/uboot/

......

4: ./mk systemimage 当修改system相关代码时,具体如下:

alps/frameworks/

alps/packages/

alps/vendor/

alps/hardware/

alps/dalvik/

...........

5: ./mk recoverimage 当修改recover相关代码时,具体如下:

alps/bootable/recovery/

alps/mediatek/customer/project_nameproject\_name/recovery/

......

6: ./mk factoryimage: 当修改factory相关代码时使用此命令,具体如下:

alps/mediatek/customer/project_nameproject\_name/factory/
alps/mediatek/customer/common/factory/
alps/mediatek/source/factory/
......
7: ./mk secroimage 当修改secro相关代码时,具体如下:
alps/mediatek/source/secro/
alps/mediatek/customer/project_nameproject\_name/secro/