在qt(mingw)中启用c ++ 1y

时间:2015-03-02 18:40:31

标签: c++ qt mingw qmake c++14

我正在尝试在qmake中启用CONFIG += c++14(使用mingw),但我总是在生成的makefile中获得-std=c++0x。我找到的唯一解决方法是添加我的.pro文件QT_GCC_MAJOR_VERSION = 4QT_GCC_MINOR_VERSION = 9,然后我就正确-std=c++1y。那些变量应该根据编译器使用自动设置,对不对?什么可以使这些变量没有设置?

我能想象的最简单的专业文件也存在这个问题:

TARGET = testProj

TEMPLATE = app

CONFIG += c++14

SOURCES += main.cpp

1 个答案:

答案 0 :(得分:1)

这实际上是一个影响mingw的Qt错误:https://bugreports.qt.io/browse/QTBUG-44142

一种简单的解决方法是编辑文件mkspecs\features\c++14.prf并注释掉greaterThan(QT_GCC_MAJOR_VERSION, 4)|greaterThan(QT_GCC_MINOR_VERSION, 7): \