我是靠谱客的博主 懦弱篮球,这篇文章主要介绍Cmake时出现不支持c++11的errorCmake时出现error:no c++11 support, Please use a different c++ complier,现在分享给大家,希望可以做个参考。
Cmake时出现error:no c++11 support, Please use a different c++ complier
问题原因:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16# Check C++11 or C++0x support include(CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) if(COMPILER_SUPPORTS_CXX11) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") add_definitions(-DCOMPILEDWITHC11) message(STATUS "Using flag -std=c++11.") elseif(COMPILER_SUPPORTS_CXX0X) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") add_definitions(-DCOMPILEDWITHC0X) message(STATUS "Using flag -std=c++0x.") else() message(FATAL_ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.") endif()
MSVC编译器与cmake3.1版本似乎存在某些问题,在该环境下使用旧版的cmake语法导致了错误
解决办法:
cmake3.1版本提供了新变量CMAKE_CXX_STANDARD 11
所以将上面的一大段代码改为
复制代码
1
2set(CMAKE_CXX_STANDARD 11)
编译成功
https://www.cnblogs.com/svenzhang9527/p/10704718.html
https://stackoverflow.com/questions/10851247/how-do-i-activate-c-11-in-cmake
最后
以上就是懦弱篮球最近收集整理的关于Cmake时出现不支持c++11的errorCmake时出现error:no c++11 support, Please use a different c++ complier的全部内容,更多相关Cmake时出现不支持c++11的errorCmake时出现error:no内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复