如何使 qtcreator 与 c++11 一起工作

Posted

技术标签:

【中文标题】如何使 qtcreator 与 c++11 一起工作【英文标题】:How to make qtcreator work with c++11 【发布时间】:2017-05-09 18:21:59 【问题描述】:

我正在尝试让学校项目在本地运行,但我一直在使用 qtcreator 和 c++11 时遇到问题。

编译器一直说它不能使用 c++11 的东西:

/Users/yoong93/Qt5.6.2/5.6/clang_64/lib/QtCore.framework/Headers/qstring.h:
757: error: no type named 'u16string' in namespace 'std'
    inline std::u16string toStdU16String() const;

       ~~~~~^

虽然.pro 文件有以下几行:

QMAKE_CXXFLAGS += -std=c++14
CONFIG += c++14
unix:!macx 
    LIBS += -lGLU

macx 
    QMAKE_CFLAGS_X86_64 += -mmacosx-version-min=10.7
    QMAKE_CXXFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64
    CONFIG +=c++11

所以我希望项目文件没有任何问题,这是其他人最常见的问题。我不知道我哪里出错了。有人知道这个问题吗?

我使用的是 OSX El Captain 版本 10.11.6 和 Qt 5.6.1,并且我安装了 Xcode 版本 7.3.1。

【问题讨论】:

我的 Mac 安装了 XCode 8 和 Qt 5.7,没有任何问题。如果升级不能为您解决问题,请尝试显示生成的编译器输出,以便我们可以查看从 Qt Creator 传递给 gcc/clang 的参数。 你试过这个只有前两行的.pro文件吗? 【参考方案1】:

以下qmake 编译器标志在OSX El Captain 上为我工作:

CONFIG += c++14
QMAKE_CXXFLAGS += -std=c++11
QMAKE_CXXFLAGS += -stdlib=libc++
QMAKE_CXXFLAGS += -Wno-c++11-extensions

【讨论】:

以上是关于如何使 qtcreator 与 c++11 一起工作的主要内容,如果未能解决你的问题,请参考以下文章

将 QtCreator 2.7.0 与 OpenCV 2.4.5 一起使用

如何配置 QtCreator 以使用 C++11?

使用 feathersjs 时如何使 vuejs 应用程序与 IE 11 一起工作

如何将 PreferenceFragment 与 ViewPager 一起使用?

如何使 C++ 中的 for each 循环函数与自定义类一起使用

如何使标准输出与并行 Python 一起使用?