MTK_make命令分析MTK make 命令分析 在 MTK 工程根目录里, 只有一个 make.bat 批处理文件。 Make.bat 实际上只起引导作用, 其只有一行批处理语句 perl make2.pl %*,于是运行该批处理文件后控制权转给了 perl 脚本 make2.pl。在这个 perl 脚本中解析了用户输入的命令行参数,设置变量,准备 make 时需要 的临时配置文件,随后根据生成的可运行映像是 PC 模拟版还是 ARM 版而分别调用不同的 构建过程。 Pc 模拟版的构建通过调用如下命令实现。 system("$msdev MoDIS.dsw /MAKE \\"$argu - Win32 $modisDir\\" /OUT ${MoDISLogDir}\\\\${argu}.log") 在这里$msdev 就是 VC 的 msdev,通过 VC 的工程文件 MoDIS.dsw 和后面的参数进行 具体的构建过程。熟悉 VC 工程的朋友应该比较清楚,因此就不再具体解释了。之后将只以 ARM 版为主来讲解整个工程的构建过程。 ARM 版的构建通过调用如下命令实现。 system("${makeCmd} -f${makeFolder}${myMF} -r -R CUSTOMER=$custom PROJECT=$project $action") 在这里${makeCmd}是 tools\\make.exe,即 GNU 的 make,${makeFolder}${myMF}是 make\\Gsm2.mak,$action 是 new、update、remake 等。变量 CUSTOMER 和 PROJECT 分别 是客户名和项目名, 在构建过程中将根据此两个变量的值选定项目相关的配置文件, 从而实 现客户化的定制。通过给 make 指定 ARM 版的核心 Makefile 文件 Gsm2……