### MTK平台11B软件编译环境若干问题的解决
#### 编译工具的安装与配置
在MTK平台11B软件编译环境中,需要用到的编译工具有Perl、ADS12、RVCT(RealView Compiler Toolset)以及VS2008等。这些工具的安装顺序和配置对软件的顺利编译至关重要。
##### RVCT的安装过程详解
1. **运行安装程序**: 首先运行`RVDS_3_1 (I)\ setup.exe`,按照提示一路“下一步”,直到出现安装license界面。
- 选择安装RVCT Only。
- 在安装license界面选择“install license”,继续下一步。
- 选择license文件路径(通常是`RVCT\Licenses\rvds.dat`),点击“add”按钮,并选择“是”继续下一步直至完成安装。
2. **破解RVCT**:
- 将破解文件夹中的三个文件复制到安装目录(默认为`C:\Program Files\ARM`)。
- 运行`crack.bat`脚本进行破解操作。
3. **复制armar.exe**:
- 复制`RVCT3.1-PATCH-1021`文件夹中的`armar.exe`到相应目录,默认路径为`C:\Program Files\ARM\RVCT\Programs\3.1\569\win_32-pentium\`。
- 这一步是为了避免出现“Fatal error: L6016U: Symbol table missing/corrupt in xxx.lib”的链接错误。
4. **修改RVDS.dat**:
- 使用UE或其他文本编辑器打开`C:\Program Files\ARM\Licenses\rvds.dat`文件。
- 查找并替换所有`HOSTID`字段,将其替换为当前计算机的MAC地址,通常需要替换19个地方。
#### 安装后的环境变量设置
为了确保编译工具能够正常工作,需要正确设置环境变量。Path变量的设置非常关键,例如:
```
Path 变量值为:
C:\Program Files\ARM\bin\win_32-pentium;
C:\Perl\site\bin;
C:\Perl\bin;
C:\Program Files\ARM\RVCT\Programs\3.1\569\win_32-pentium;
C:\Program Files\ARM\Utilities\FLEXlm\10.8.5.0\1\win_32-pentium;
C:\Program Files\ARM\ADSv1_2\bin;
%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
C:\Program Files\ARM\RDI\Deprecated\1.3.1\1\windows;
C:\Program Files\TortoiseSVN\bin
```
这里包含了RVCT、Perl、ARM的其他工具等所需的路径。
#### 编译过程中的常见问题及其解决方法
在软件编译过程中,可能会遇到各种各样的错误。下面是一些具体的错误及其解决方法。
1. **错误: make: *** 【mmi_feature_check】Error 1**
- **错误描述**:
此错误通常伴随着log文件`mmi_check.log`中的信息:“找不到文件系统找不到指定的路径”。
- **解决方法**:
- 查看`mmi_feature_check.pl`文件中的`processCheckDotC`函数,在执行`exit 1 if (system("makeCheck.bat"))`时出现问题。
- 在脚本开头添加 `$compiler = "armcc";` 可以解决此问题。
2. **错误: System memory calculation failed**
- **错误描述**:
此错误通常出现在查看log文件`sys_mem_gen.log`时,提示“系统找不到指定的路径”。
- 具体错误信息包括系统无法打开`sys_comp_config.o`文件。
- **解决方法**:
- 在`option.mak`文件中为`DIR_ARM`变量重新赋值,例如可以将路径更改为`C:\progra~1\ARM\RVCT`或者自定义一个合适的路径。
通过以上步骤,我们可以成功地解决MTK平台11B软件编译环境中的常见问题,从而确保软件编译工作的顺利进行。这些解决方案不仅适用于特定版本的MTK平台,对于类似的软件开发环境也有一定的参考价值。