我在Debian Jessie上使用Qt5和Clang。要试用通用Lambda,.pro文件中有:
CONFIG += c++14
建造后,我得到了:
warning: 'auto' type specifier is a C++11 extension [-Wc++11-extensions]
为了摆脱这个明显的信息,我做了:
QMAKE_CXXFLAGS += -Wc++11-extensions
但我不断得到明显的信息。为什么?如何隐藏?
根据qmake的存储库历史,在qmake 5.4版本中添加了CONFIG += c++14
节:https://codereview.qt-project.org/#/c/87831/
然而,Debian Jessie似乎只有qmake 5.3版本(https://packages.debian.org/jessie/qt5-qmake)
作为一种变通方法,您可以使用
QMAKE_CXXFLAGS += -std=c++14
或
QMAKE_CXXFLAGS += -std=gnu++14
我怀疑您想要QMAKE_CXXFLAGS+=-Wno-c++11-extensions
。
clang编译器文档
相关部分:
-Wfoo
:启用警告foo
。
-Wno-foo
:禁用警告foo
。