CentOS 作为企业级服务器操作系统被广泛使用,其中使用C++开发服务器应用又是常见的,可是CentOS本身自带的GCC版本更新缓慢,要想使用较新的GCC版本就是一个经常需要解决的问题,当然可以自行编译GCC源码,但是比较麻烦,而且很难做到多个GCC版本之间进行切换。
从CentOS6开始,CentOS自身提供了一种方式可以使用Scientific Linux distribution发行版的devtoolset-*来解决。具体使用方式如下:
1.安装scl发布源:yum install centos-release-scl-rh
2.安装GCC&GCC-C++:yum install devtoolset-3-gcc devtoolset-3-gcc-c++
这里面devtoolset-3是第3个版本,目前针对CentOS6&7支持3,4,6三个版本,分别对应GCC4.9,GCC5.3,GCC6.2,用户可以根据自己的需要选择安装哪一个版本,当然可以同时安装多个版本。
3.根据需要使用:source /opt/rh/devtoolset-3/enable进行切换,这里面devtoolset-3可以根据你是安装3,4,6进行切换。这个切换原理也很简单,只是设置了一些环境变量。若要在启动的时候就生效,可以放置到~/.bashrc之中即可。
4.要安装6.2版本,可以yum install devtoolset-6-gcc devtoolset-6-gcc-c++
注意:有些版本的centos可能安装失败,会提示没有6的包,此时先yum remove centos-release-scl-rh,重新执行上述步骤试试。