覆盖GCC编译标志

时间:2013-08-07 11:59:54

标签: gcc

是否可以覆盖 make / configure / cmake 中的运行时检测标志来检测体系结构优化级别并覆盖它?

例如 ./ configure & make 将检测具有SSE的现代CPU,例如,我想覆盖它并设置:当gcc编译.cpp文件时,它将始终使用 -march = i586

这可能吗?谢谢!

2 个答案:

答案 0 :(得分:1)

./ configure --help

会帮助你

Some influential environment variables:
CXX         C++ compiler command
CXXFLAGS    C++ compiler flags
LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
          nonstandard directory <lib dir>
LIBS        libraries to pass to the linker, e.g. -l<library>
CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
          you have headers in a nonstandard directory <include dir>
CC          C compiler command
CFLAGS      C compiler flags
CPP         C preprocessor
CXXCPP      C++ preprocessor

CFLAGS =“”./ configure

答案 1 :(得分:0)

每个配置脚本都不同,没有灵丹妙药。如果要可靠地覆盖gcc编译器标志,请为/ usr / bin / gcc创建一个包装器脚本并添加/修改所需的标志,并将脚本放在PATH的开头。

您可以使用导出CC&amp; CXX指向你的gcc包装器脚本,但我已经看到了谓词'if CC ==“gcc”'的脚本,它会破坏。