检查Makefile中的gcc版本?
我想使用一些旧的gcc版本中没有的gcc警告开关(例如-Wtype-limits)。
是否有一种简单的方法来检查gcc版本,如果使用最近的gcc,只添加那些额外的选项?
没有找到相关结果
已邀请:
6 个回复
部窖空
函数来执行像
这样的shell命令,然后使用
条件表达式来检查版本号并适当地设置你的
变量。 这是一个简单的makefile示例:
编辑:没有
。但是,您可以使用shell
命令执行比比较更大的操作。这是一个例子
焙恍挝厂熄
)使用
这解决了任何版本部分中两位数字的可能性,以及在
的输出中缺少版本的第3部分的可能性(在某些早期的gcc版本中就是这种情况)。 所以要测试makefile中的版本,请使用类似的东西(注意
在最后一个sed命令中)
悸翠疮武昏
如果他们在gcc 4.9之后释放gcc 4.10,那么需要一些sed hacking,但这仍然很可读:
寇剩
览幕堤分
用法:
作为第二个参数,您可以使用test(1)支持的任何运算符:eq,gt,lt,ge,le等。 如果cc -V不适合您,请将其替换为gcc -dumpversion或任何合适的替代品 希望有所帮助。
慰泥悍瓶
gcc(Ubuntu 4.8.1-2ubuntu1~12.04)4.8.1