我正在尝试用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,这就是为什么我认为编译器可能会受到责备。
答案 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