如何在GCC中禁用SSE?

时间:2012-11-11 18:12:27

标签: gcc arm debian sse

我正在尝试用debian制作一个包(squeeze,armel)。问题是,我的GCC似乎设置了-msse2,它在ARM上不受支持,我不知道如何禁用它。如何更改GCC的默认标志以禁用此功能?感谢。

完整错误:

Building CXX object frameworks/CoreLib/CMakeFiles/.....cpp.o

cc1plus: error: unrecognized command line option "-msse2"

make[2] \*\*\* [fframeworks/CoreLib/CMakeFiles/.....cpp.o] Error 1

make[1] \*\*\* [frameworks/CoreLib/CMakeFiles/.....dir/all] Error 2

make \*\*\* [all] Error 2

事情是,没有提到的文件中包含-msse2,这就是为什么我认为编译器可能会受到责备。

2 个答案:

答案 0 :(得分:3)

MMX,SSE和SSE2是ARM不支持的Intel / AMD特定扩展,ARM拥有自己的NEON SIMD扩展。在我看来,您正在尝试为ARM交叉编译程序并使用 native toochain,因为您需要一个针对目标平台的工具链。这是关于如何安装可能有用的ARM工具链的tutorial

编辑:现在我看到错误,Makefile正在将-msse2传递给gcc,您应该阅读有关将该软件包编译到ARM的说明,看看是否可能。

答案 1 :(得分:1)

如果其他人在这里结束: 我跑了一个类似的pbm,这是由于配置脚本没有正确处理手臂的情况。对我有用的解决方案是使用选项Iapp = [iapp1 iapp2 iapp3 iapp4]

运行configure