MTK构建过程解析:从make.bat到ARM版构建

3星 · 超过75%的资源 需积分: 9 45 下载量 143 浏览量 更新于2024-12-13 1 收藏 68KB PDF 举报
"MTK工程的构建流程主要依赖于make命令,通过批处理文件make.bat和perl脚本make2.pl来驱动。批处理文件只执行一行指令,将控制权交给make2.pl。此脚本负责解析命令行参数,设置变量,并生成临时配置文件。构建过程会根据目标平台是PC模拟版还是ARM版而有所不同。对于PC模拟版,构建通过Visual Studio的msdev工具完成。而对于ARM版,使用的是GNU的make工具,核心Makefile文件为Gsm2.mak,它引用了Option.mak和其他临时配置文件,实现了针对不同客户和项目的定制。" 在MTK开发环境中,构建过程的核心在于理解如何通过make命令协调各个部分。`make.bat`是入口点,它简单地启动了perl脚本`make2.pl`。这个脚本处理用户输入,设置环境,为构建过程准备必要的配置。当目标平台是PC模拟版时,`make2.pl`调用`msdev`命令,利用Visual Studio的`.dsw`工程文件进行编译。对于熟悉VC工程的人来说,这一步相当直观。 然而,当目标是ARM设备时,构建流程转向了使用GNU的`make`工具。`makeCmd`变量指向`tools\\make.exe`,并结合`Gsm2.mak`文件来驱动整个构建过程。`Gsm2.mak`包含了构建动作的规则,如`new`、`update`和`remake`,并引用了`Option.mak`和其他由`make2.pl`动态生成的临时配置文件(如`.tmp`和`.bld`文件),这些文件包含了特定客户和项目定制的变量设置,以及版本信息。 `new`动作通常用于初始化构建,清理旧的编译结果,并开始新构建;`update`可能用于更新源代码后的重新编译;而`remake`则可能用于强制完全重建项目。这些动作在`Gsm2.mak`中定义,并调用了诸如`cmmgen`、`mmi_feature_check`、`asngencodegen`和`asn`等步骤,这些都是构建过程中的特定任务,涉及到源代码的预处理、编译、链接等环节。 MTK的构建流程是高度自定义和模块化的,它允许开发者根据不同的硬件平台和客户需求进行灵活的配置和编译。这种设计使得MTK平台能够适应广泛的设备和应用,同时也为开发者提供了丰富的工具集来管理和优化他们的开发工作流。