问题描述 #
在静态分析的时候,出现很多未识别的选项"-m32"或者"-m64".
问题原因 #
这种情况一般出现在交叉编译器环境中。这种环境下,我们一般选中对应版本的GUN GCC为编译器选项,而GNU GCC编译器配置文件中有-m32或者-m64(32位或者64位),所以我们需要去掉。
解决方式 #
添加自定义编译器 #
文件➡️新建➡️其他➡️C++test➡️自定义编译器
- 添加自定义编译器➡️输入对应名称以及模板编译器(大多数交叉编译器都是由GUN编译器交叉编译而来)
- 编译器名称——在C++Test中显示的编译器。
- 编译器种类——模板编译器(一般可以通过编译命令-v选项查看编译器版本做猜测,也可以查看编译器手册、询问客户了解)。
- 编译器标识符——编译器保存路径名。
- C编译器可执行程序——可以使用绝对路径。
- C++编译器可执行程序——可以使用绝对路径。
- 连接器可执行程序——可以使用绝对路径。
点击下一步能够看到对应编译器文件位置➡️点击完成
默认自定义编译器保存在如下路径:
去这个路径下找到三个文件c.psrc、cpp.psrc、gui.properties,将里面的所有的“-m32”或者“-m64”删除。
重启(不重启的话,单元还是有问题)之后选择项目编译器选择新创建的这个编译器。