1 CMake指定gcc/g++编译器

Centos7默认的gcc和g++版本是4.8.5,这个版本对C++11的特性支持的不是很完全,所以一般都建议使用高版本的gcc和g++。

假设:

  • 高版本的gcc的路径为:/opt/rh/devtoolset-10/root/bin/gcc
  • 高版本的g++的路径为:/opt/rh/devtoolset-10/root/bin/g++

在项目的CMakelist.txt我们使用以下语句指定上述的gcc和g++

SET(CMAKE_C_COMPILER "/opt/rh/devtoolset-10/root/bin/gcc")
SET(CMAKE_CXX_COMPILER "/opt/rh/devtoolset-10/root/bin/g++")

通过这种方式可以在CMake内部直接指定当前项目所使用的gcc和g++版本,即使所使用的gcc和g++高版本并没有配置为当前系统默认的gcc和g++。