如何使用 C++14 支持从源代码构建 Qt 5
How to build Qt 5 from source with c++14 support
我正在尝试使用 gcc4.9 的 -std=c++14 标志构建从 git 中提取的 Qt 5.4.1。但是我不确定如何将标志正确传递到构建过程中。
我读到将 CONFIG += c++14 添加到 qt 项目文件应该从 Qt5.4 开始工作,所以我将它添加到位于顶部文件夹的 qt.pro 中。
但 Qt 仍然使用 -std=c++0x (c++11) 编译。
如果您使用 g++ 或 clang++ 构建 Qt 5,则转到qt5/qtbase/mkspecs/common/g++-base.conf
或 qt5/qtbase/mkspecs/common/clang.conf
并简单地将 QMAKE_CXXFLAGS_CXX11 = -std=c++11
赋值的右侧更改为(例如)-std=gnu++1z
(或您需要的任何内容)。
要构建 Qt 5,您必须 运行 qt5/configure
脚本并提供 -c++11
(以及 -platform linux-clang-libc++
或 linux-clang
或 linux-g++
或任何你需要的——参数是代表你的平台的 qt/qtbase/mkspecs/*/
目录名)。
我正在尝试使用 gcc4.9 的 -std=c++14 标志构建从 git 中提取的 Qt 5.4.1。但是我不确定如何将标志正确传递到构建过程中。
我读到将 CONFIG += c++14 添加到 qt 项目文件应该从 Qt5.4 开始工作,所以我将它添加到位于顶部文件夹的 qt.pro 中。
但 Qt 仍然使用 -std=c++0x (c++11) 编译。
如果您使用 g++ 或 clang++ 构建 Qt 5,则转到qt5/qtbase/mkspecs/common/g++-base.conf
或 qt5/qtbase/mkspecs/common/clang.conf
并简单地将 QMAKE_CXXFLAGS_CXX11 = -std=c++11
赋值的右侧更改为(例如)-std=gnu++1z
(或您需要的任何内容)。
要构建 Qt 5,您必须 运行 qt5/configure
脚本并提供 -c++11
(以及 -platform linux-clang-libc++
或 linux-clang
或 linux-g++
或任何你需要的——参数是代表你的平台的 qt/qtbase/mkspecs/*/
目录名)。