mtk编译
命令
目录
1 目录………………………………………………………………………………2
2 new ………………………………………………………………………………..3
3 update……………………………………………………………………………..3
4 remake……………………………………………………………………………..3
5 clean………………………………………………………………………………..3
6 其他命令介绍 ……………………………………………………………………..4
2 new:
功能
:全新开始构建整个工程的ARM版,包括图片、声
音、字符
串等资源
都要重做。在构建工程过程中,清除所有的目标文件
,库文件,日志文件等。New指令还会自动
创建必要的目录、移除临时文件和中间脚本、更新日志
文件。
过程简要说
明:new->cleanall->sysgen->ckscatter->mmi_feature_check->asngen->codegen->asnregen->operator_check_lit->$(BTLD_BIN_FILE)->update。
依赖指令:new依赖的其他指令最多,其中包括
cleanall,sysgen,ckscatter,mmi_feature_check,asngen,codegen,asnregen,operator_check_lite,update.
用途:new指令是最彻底也是耗时最长的一个动作,一般得到一个新的MTK
发布版本后由项目
负责人要做一次。
使用示例:C: BIRD25_GEMINI_07BRelease>make BIRD25_GEMINI_07B gprs new。
3 update:
功能:update是重新更新整个工程的ARM版,该动作会扫描工程中文
件和库的依赖关系,若依赖关系有变化会建立新的依赖
关系,随后根据新的依赖关系重新编译链接有改动的部分。Update指令不依赖cleanall指令,所以它不会删除目标文件和库文件,也不会去更新日志
文件和创建目标目录,这一点和remake相像,这也是为什么执行时间
比new短的原因。
过程简要说明:update->cleanlog->cleanbin->mcddll
_update->codegen->resgen->cksydrv->remake。
依赖指令:cleanlog,cleanbin,mcddll_updata,codegen,resgen,cksydrv,remake。
用途:update是耗时较长的一个指令,一般在增加或删除一些驱动或应用
情况下使用。
使用示例:C: BIRD25_GEMINI_07BRelease>make BIRD25_GEMINI_07B gprs
update。4 remake:
功能: remake是重新编译整个工程的ARM版,该动作只是简单的重新编译链接有改动的部分。它不检查依赖关系.不扫描资源,只扫描代码
的改变,有改变的重编,资源和无改变的代码不编。
过程简要说
明:remake->mcp_check->cleanlog->cleanbin->genverno->libs->$(BTLD_BIN_FIKE)->cmmgen->done。
依赖指
令:mcp_check,cleanlog,cleanbin,genverno,libs,$(BIN_FIKE),cmmgen,done。其中最重
要的两个指令是libs,$(BIN_FIKE)。Libs调用编译器和连接器将各个模块目录下的C文件编译连接为独立的库。$(BIN_FIKE)是将
各个模块编译连接的库和mtk_lib目录下的库一起连接起来得到一个映像文件,然后使用ADS的工具
fromelf将映像文件生成以变量
BIN_FILE命名的二进制文件,该文件可以下载
到硬件板上运行
。
用途:remake是耗时最短的一个动作,也是最常用的动作。
使用示例:C: BIRD25_GEMINI_07BRelease>make BIRD25_GEMINI_07B
gprs remake。
5 clean:
功能:清除所有的目标文件,临时文件,库文件,可执行文件,更新日志文件。还可以用于某个模块相关的清除工作。
过程简要说明:check build root、target folder、comp、lib、comp log
folder->clean bin folder、elf、lis、htm、log files、tst database
files、obj,lib files。
依赖指令:cleanlog,cleanbin,cleanmod,cleancodegen等。
用途:作为其它命令所依赖的指令,还有就是清除工程或者指定模块对象
的类库。
使用示例:C: BIRD25_GEMINI_07BRelease>make BIRD25_GEMINI_07B gprs
clean,
C: BIRD25_GEMINI_07BRelease>make BIRD25_GEMINI_07B gprs
clean Init。
6 其他命令介绍:
new_modis:是全新构建整个工程的PC模拟
版,其调用VC的编译器和链接器得到一个可以在windows
上运行的PC模拟版。MMI应用软件
工程师
可以在没有硬件板的情况下在PC上检查和调试
自己写好的应用。
codegen_modis:产生modis需要的trace文件的datebase。
gen_modis:产生vc工程文件。
remake_modis:重新编译整个工程的PC版。
Codegen:创建TST数据
库。它依赖的指令
有:cleancodegen,asngen,
[umts_gen],codegen,asnregen,cleanbin,mcddll_update,done。
Cleancodegen:删除codegen.lis。
Resgen:生成MMI资源。它依赖的指令
有:code_generate,cleancodegen,asngen,codegen,asnregen,cleanbin,mcddll_update,done。
Cmmgen:生成CMM文件。
Sysgen:生成内存
映射文件,并放在CUSTOMER文件夹里面。
Emigen:生成flash_opt.h,custom_EMI.h,custom_EMI.c和custom_switchclock.c文
件。
Emiclean:清除EMI设置
。
Mmi_feature_check:根据MMI_features.h和MMI_features_switch.h中宏定义
的不同来产生info.log文件。
Operator_check:检查customer的宏是否被修改,如果修改产生相应log文件。
Fota:生成FOTA二进制文件。
Bootloader:生成bootloader二进制文件。
Ckscatter:检查scatter文件
Mmi_obj_check:检查运行时间值,e.g,联合体元素的大小等。
Med_mem_check:检查media memory。该指令依赖gencustominfo
gen_infolog nvram_auto_gen。
Dummy_data_check:检查虚拟数据。
Viewlog:查看日志文件。
Cksysdrv:检查系统
驱动是否为满。
Genverno:生成verno.c/h。
Mcddll_update:生成和更新tst mcddll.dll文件。
Gen_bl_verno:生成bootloader版本号。
Del_fota:删除fota二进制文件和elf,lis,sym,htm.*.log文件。
mtk编译命令总结
最新推荐文章于 2020-04-29 11:56:25 发布