我正在尝试build something that requires CMake,但是当我尝试时:
cmake -DBUILD_EXAMPLES=YES -DBUILD_TESTS=YES
我收到错误:
Your systems default compiler is GCC. This project makes use of c++11
features present only in versions of gcc >= 4.9. You can use a different
compiler by re-running cmake with the command switch "-D
CMAKE_CXX_COMPILER=<compiler>"
我尝试过使用CMAKE_CXX_COMPILER=c++11
和CMAKE_CXX_COMPILER=g++11
,但这些也会出错。这是因为我使用了错误的变量,还是因为我没有安装c ++ 11?它会有什么解决方法?
答案 0 :(得分:3)
看起来您的编译器太旧了。请务必检查gcc -v
。
如果您不想替换系统的默认编译器,可以在命令行中指定备用编译器,如下所示:
CXX=g++49 CC=gcc49 cmake -DBUILD_EXAMPLES=YES -DBUILD_TESTS=YES <path_to_source>
其中g++49
和gcc49
是系统上替代编译器的名称。
大多数Linux发行版允许同时安装多个版本的gcc,因此您应该能够毫不费力地实现这一目标。