我正在不同版本的Ubuntu OS(14.04和16.04 LTS)上编译qt源(C ++)。源代码在14.04 LTS上编译(g ++),没有警告。但是在16.04上给出了以下警告“ :0:3:警告:ISO C ++ 11在宏名称警告之后需要空格”。
我想知道是什么原因导致此错误?提前致谢。
g ++-版本:5.4.0 20160609。
最佳答案
您可能有一个g++
命令行,其中的-D
选项无效。 (或者不止一个。)
后两个警告可以通过以下方式触发
g++ '-DFOO"unterminated' ...
(请注意在
=
之后缺少的FOO
。)由于您可能使用的是某些构建系统,因此可能的原因是构建配置不正确,从而导致
-D
参数中的引号引起了不终止的引用。 (尽管引号本身并非无意也不是不可能。)