我是靠谱客的博主 懦弱篮球,最近开发中收集的这篇文章主要介绍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

在这里插入图片描述

问题原因:

# 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

所以将上面的一大段代码改为

set(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 c++11 support, Please use a different c++ complier所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部