我想知道是否有可能在Qt-Creator中抑制编译器特定的警告.
@H_301_2@我的g -4.5打印:
> g -4.5
> QtCreator 2.01
> Qt 4.7 @H_301_2@谢谢!
@H_301_2@warning: enumeral and non-enumeral type in conditional expression@H_301_2@我想摆脱它,因为它非常烦人. @H_301_2@> Ubuntu 11.04 x64
> g -4.5
> QtCreator 2.01
> Qt 4.7 @H_301_2@谢谢!
解决方法
你需要使用这个:
take a look at this for ones that you can’t suppress,那样你就不给了
错误的想法,你的旗帜不正常. @H_301_2@显然,知道标志是否被传递给编译器的最好方法是查看编译器输出,并确保你的标志在那里,你应该在命令行中看到-Wno-enum-compare,例如,即使国旗没有压制任何东西.你会惊讶地发现有关这样的东西的信息有多难,需要一些挖掘,我最终从编辑.pro文件的自动完成中找到它,如果你在编辑.pro文件时遇到问题,按Ctrl空间(或开始输入单词并点击Shift Home),获取可以在.pro文件中使用的有效内容列表,就像任何其他常用源文件一样.它帮助我找到了正确的东西(QMAKE_CXXFLAGS,因为事实证明,通常不是人们建议的,出于某种原因)……哦是的,这是关于Qt版本4.8,创建者2.4,所以它可能已经改变,因为这帖子(他们似乎喜欢这么做,我看到新版本已经发生了巨大的变化).
@H_301_2@QMAKE_CXXFLAGS += -Wno-enum-compare@H_301_2@例如,如果您收到以-Wenum-compare结尾的警告. @H_301_2@另请注意,根据GCC文档,无法抑制某些警告
take a look at this for ones that you can’t suppress,那样你就不给了
错误的想法,你的旗帜不正常. @H_301_2@显然,知道标志是否被传递给编译器的最好方法是查看编译器输出,并确保你的标志在那里,你应该在命令行中看到-Wno-enum-compare,例如,即使国旗没有压制任何东西.你会惊讶地发现有关这样的东西的信息有多难,需要一些挖掘,我最终从编辑.pro文件的自动完成中找到它,如果你在编辑.pro文件时遇到问题,按Ctrl空间(或开始输入单词并点击Shift Home),获取可以在.pro文件中使用的有效内容列表,就像任何其他常用源文件一样.它帮助我找到了正确的东西(QMAKE_CXXFLAGS,因为事实证明,通常不是人们建议的,出于某种原因)……哦是的,这是关于Qt版本4.8,创建者2.4,所以它可能已经改变,因为这帖子(他们似乎喜欢这么做,我看到新版本已经发生了巨大的变化).