如何向extconf.rb添加C++编译器标志

And*_*ack 9 c c++ ruby

我正在编写一个Ruby扩展,我有一个标准的mkmf配置脚本,但我需要--std=c++0x在所有C++编译步骤中添加一个特殊的include flag().我不希望它在C编译步骤中,因为它会抛出警告.我该怎么做?

require 'mkmf'
create_makefile('thing')
Run Code Online (Sandbox Code Playgroud)

例如,我尝试过$CXXFLAGS << '-I..',但CXXFLAGS尚未定义.如果我使用$CXXFLAGS = '-I..'它,它稍后会被覆盖.

tor*_*rak 1

我见过通过将 $(CXX) 定义为编译器和所需参数的组合来处理类似的情况。

CXX=gcc --std=c++0x
Run Code Online (Sandbox Code Playgroud)