【转载】mtk编译命令

摘要:
4.重做:功能:重做是重新编译整个项目的ARM版本。此操作只是一个简单的重新编译,以链接更改的部分。remake_ Modis:重新编译整个项目的PC版本。

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文件。

本文来自:天勤手机研发网(mtkmtk.com) -做手机就上这个网站
详细出处:http://www.mtkmtk.com/html/download/mtkbuild/2010/0107/5155.html

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/nie_feilong/archive/2010/05/07/5567893.aspx

免责声明:文章转载自《【转载】mtk编译命令》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇缓存的应用场景以及要注意的问题解决报错:JPA No EntityManager with actual transaction available for current thread下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Java高并发,如何解决,什么方式解决

  对于我们开发的网站,如果网站的访问量非常大的话,那么我们就需要考虑相关的并发访问问题了。而并发问题是绝大部分的程序员头疼的问题,但话又说回来了,既然逃避不掉, 那我们就坦然面对吧~今天就让我们一起来研究一下常见的并发和同步吧。   为了更好的理解并发和同步,我们需要先明白两个重要的概念:同步和异步    1、同步和异步的区别和联系    所谓同步,可以...

java通过jdbc访问mysql,update数据返回值的思考

 先不说那么多,把Java代码贴出来吧。 public static void main(String[] args) throws InterruptedException, IOException { try { DriverManagerDataSource dataSource = new DriverManager...

在clickhouse中更新和删除

ck 目前支持了更新和删除,但是与传统sql语法 略有不同,我也记录下来,防止后面忘记。 测试数据 :) select count(*) from system.columns where table='test_update'; ┌─count()─┐ │ 332 │ └─────────┘ :) select count(*) from t...

C# NuGet常用命令

命令执行位置:工具=〉Nuget包管理器=〉程序包管理器控制台 一、安装 1.安装指定版本类库install-package <程序包名> -version <版本号> 2.安装到指定的项目install-package <程序包名> -project XXXProjectName -version <版本号>...

django学习-29.表单提交方式之一:post请求(注册/登录/改密)

目录结构 1.写这篇博客的目的 2.完整操作流程 2.1.第一步:新增相关html页面 2.1.1.新增一个【index_html.html】 2.1.2.新增一个【login_html.html】 2.1.3.新增一个【register_html.html】 2.1.4.新增一个【register_success_html.html】 2.1.5.新增一...

详解EBS接口开发之库存事务处理采购接收--补充

除了可以用 详解EBS接口开发之库存事务处理采购接收的方法还可以用一下方法,不同之处在于带有批次和序列控制的时候实现方式不同 The script will load records into the tables RCV_HEADERS_INTERFACE, RCV_TRANSACTIONS_INTERFACE,MTL_TRANSACTION_LOT...