我正在编译第 3 方库并且不关心修复库中存在的警告,但我不希望它们污染 Qt Creator 中的问题 Pane 。
我已尝试遵循建议 here , 但在 -Wall
启用后没有禁用编译器标志,例如 -Wno-enum-compare
。
看完this ,我试过像这样删除标志:
CFLAGS -= -Wall
但这也没有用。所以我尝试了 this advice :
QMAKE_CXXFLAGS_WARN_OFF -= -Wall
仍然没有。
所以我查看了生成的 Makefile
并发现了这个:
CFLAGS = -pipe -g -fPIC -Wall -W -D_REENTRANT $(DEFINES)
CXXFLAGS = -pipe -g -fPIC -Wall -W -D_REENTRANT $(DEFINES)
所以我尝试从这两个变量中删除标志:
CFLAGS -= -Wall
CXXFLAGS -= -Wall
仍然没有。你应该如何删除这个编译器标志?!
最佳答案
最简单的解决方案是:
CONFIG += warn_off
感谢评论中的 peppe。
说明
-Wall
标志通过以下两个变量插入到 Makefile
中:
QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_ON
因此,要删除 -Wall
,您需要从这两个变量中删除它。
QMAKE_CFLAGS_WARN_ON -= -Wall
QMAKE_CXXFLAGS_WARN_ON -= -Wall
warn_off
就是这样做的。
关于c++ - 在 Qt 项目中禁用 -Wall 编译器警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18667291/