- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MTK程序编译及常见错误分析
1. 编写目的
本文编写的目的主要是从整体上理解MTK的编译过程,以便较快的处理编译中遇到的问题,同时为以后可能的优化编译过程提供参考。
2. 简介
MTK的编译过程主要是在windows命令行下通过Makefile文件执行相应的prel脚本或c程序,将资源包生成c源程序,并与相应模块的c程序.o,.lib或.obj的中间代码,最终生成在手机上使用的.bin文件和在模拟器上使用的mmiresource.dll资源文件。
3. 编译环境
A. 编译工具和辅助工具
l ADS1.2
l ADS1.2_update_848.exe
l MSYS 版本:1.0.10
l MinGW 版本:3.1.0
l Gcc-core-3.3.1
l Gcc-g++-3.3.1
l ImageMagick 版本:6.3.6 Q16
l 7-zip 版本:3.13
l 注意:按照联发科技的要求,最好上述软件采用建议的版本,否则可能会出现异常情况,导致不能正常编译。
B. 编译环境搭建
l 按默认路径安装ADS1.2,并安装848补丁包
l 按默认路径安装Perl
l 按默认路径安装7_zip
l 安装MinGW
先按默认路径安装MinGW安装包,然后解压gcc-core、gcc-g++的压缩包,讲解压后的两个文件夹复制到MinGW安装路径下。
l 安装MSYS
l 安装ImageMagick,注意:
按默认提示安装到Select Additional Tasks时,所有的选择全取消,后面再按默认安装。
l 复制7z.exe
拷贝..\7_Zip\7z.exe 至..\plutommi\Customer\ResGenerator,并改名为7za.exe。
l 复制MinGW
拷贝..\MinGW至..\Tools\MinGW。
l 复制MSYS
拷贝..\msys\1.0至..\Tools\MSYS。
l 复制ImageMagick
拷贝..\ImageMagick-6.2.5-Q16文件夹下全部文件
至 ..\plutommi\Customer\ResGenerator目录下
l 设置make.exe
改名mingw32-make.exe(..\Tools\MinGW)为make.exe,并放在tools目录下。
C. 编译环境检查
l 检查第三方软件安装情况
如果确认全部安装,可跳过此步。
将custom3rdParty.pl文件拷贝到本机,修改
4$sevenZipPath = C:\\Progra1~1\\7-Zip;
5$MinGWPath = C:\\MinGW;
6$MSYSPath = C:\\MSYS;
然后运行在Tools\chk_env.exe
l 检查windows环境变量
l 检查MTK中Makefile变量是否正确
打开..\make\option.make,检查关于ADS编译器的路径设置
ifeq ($(strip $(COMPILER)),ADS)
DIR_ARM = c:\adsv1_2
DIR_ARM := $(strip $(DIR_ARM))
DIR_TOOL = $(DIR_ARM)\bin
DIR_ARMLIB = $(DIR_ARM)\lib
DIR_ARMINC = $(DIR_ARM)\include
Endif
D. 结束
现在可以执行MAKE了,例如
Make customer_name gprs new_modis
Make CUSTOMER_NAME gprs new
E. 搭建编译环境的另一种方法
正确安装A中所述软件后,配置custom3rdParty.pl中变量,用该批处理文件自动配置剩余工作。
F. 搭建编译环境的一种捷径
当已经配置好一个MTK工程,需要在另一个工程中搭建编译环境时,有一种便捷的方法,步骤如下:
l 假设已配置好的工程MAUI.A,待配置的是MAUI.B;
l 备份MAUI.B的tools目录,如改名为tools_new;
l 复制MAUI.A的tools目录至MAUI.B的目录下;
l
文档评论(0)