【发布时间】:2010-12-24 00:08:47
【问题描述】:
我正在为架构不支持 sse2 以外的 sse 的设备编译应用程序,我想知道是否可以从 GNU autoconf 生成的配置脚本中禁用使用 sse3 指令进行编译?我知道您可以在 gcc/g++ 中使用 mno-sse3 选项将其关闭,但如果我可以在配置级别将其关闭而不是生成 make 文件然后手动插入该编译器标志,那就太好了...
【问题讨论】:
我正在为架构不支持 sse2 以外的 sse 的设备编译应用程序,我想知道是否可以从 GNU autoconf 生成的配置脚本中禁用使用 sse3 指令进行编译?我知道您可以在 gcc/g++ 中使用 mno-sse3 选项将其关闭,但如果我可以在配置级别将其关闭而不是生成 make 文件然后手动插入该编译器标志,那就太好了...
【问题讨论】:
当然。只需在调用 configure 之前设置所需的标志:
$ CFLAGS="-mtune i386" ./configure --enable-this --disable-that ...
如果-mtune 做错了,你可能想试试 -march,我最近没有测试过。
【讨论】:
如果您使用的是较新版本的 gcc,您只需执行-march=native,编译器就会为您处理。
编辑:这个选项是在gcc 4.2中引入的。
【讨论】: