zak*_*jma 5 qt gcc compiler-errors c++11
我使用了 Qt 5.7 和 gcc 4.9.2。Qt 核心模块抛出Qt requires C++11 support错误。
这个页面说
gcc 4.9.2 无法编译 Qt。
所以我安装了 gcc 4.8。我在终端上使用以下命令进行检查:
$ g++ --version
g++ (Ubuntu 4.8.4-1ubuntu15) 4.8.4
Run Code Online (Sandbox Code Playgroud)
我的工具包使用 cmake 而不是 qmake。我添加 TARGET_LINK_LIBRARIES ( xxxx yyyy /usr/bin/c++ -std=c++11 到 CMakeLists-txt。
我重新启动我的电脑并再次运行我的应用程序。抛出同样的错误。
/opt/Qt/5.7/gcc_64/include/QtCore/qbasicatomic.h:61: error: #error "Qt requires C++11 support"
# error "Qt requires C++11 support"
^
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
显式打开 c++11:
set(CMAKE_CXX_FLAGS "-std=c++11" CACHE STRING "compile flags" FORCE)声明后project(...)。add_library(MyLib SHARED ${PROJECT_HEADERS} ${PROJECT_SOURCES})
...
set_property(TARGET MyLib PROPERTY CXX_STANDARD 11)
set_property(TARGET MyLib PROPERTY CXX_STANDARD_REQUIRED ON)