使用Clang在QtCreator中支持C ++ 14

时间:2015-01-09 10:13:29

标签: c++ clang qt-creator c++14

如何使用Clang 3.5在QtCreator 3.3中启用C ++ 14支持?我添加了一个Clang工具包,我在项目文件中添加了CONFIG += c++14。然而,当使用例如return type deduction我收到以下错误:

  

错误:' auto'返回没有尾随返回类型;推导出的返回类型是C ++ 1y扩展

2 个答案:

答案 0 :(得分:6)

您可以在CONFIG += c++14文件中使用.pro和Qt5.5

但clang有一个错误,所以我们需要修改Qt/5.5/clang_64/mkspecs/features/c++14.prf文件, 在include(c++11.prf)之前添加此代码:

contains(QMAKE_LFLAGS_CXX11, -stdlib=libc++) {
    QMAKE_CXXFLAGS_CXX11 += -stdlib=libc++
}

答案 1 :(得分:3)

我必须转到构建文件夹中的Makefile,然后用-std=c++11手动替换-std=c++14

值得庆幸的是,当您将工具包添加到项目中时,Makefile只会写入一次。我只需要这样做一次,并且可以根据需要随时在QtCreator中构建。

所以现在我可以使用Clang工具包来使用所有新的c ++ 14功能。作为奖励,如果我在Makefile中手动设置-std=c++1z,我也可以使用所有c ++ 17功能。甜!