Linux 自由切换gcc的版本(备忘)

gcc作为c和c++的编译器,重要性不言而喻,尤其是在安装c,c++编写的各类软件或者需要编译安装的时候,免不了要和gcc打交道,某些软件对gcc的版本有严重的依赖,高低都不太行的样子。

要不说Linux社区强大呢,强大在这样的问题有专门的yum可以解决这类问题(官方的默认的源和epel源一般就一个比较低版本的gcc,centos7一般为4.8版本,完全不能满足需要),这个源就是 scl源。

使用这个源并切换gcc的版本十分方便,两个命令就可以了。

yum install centos-release-scl -y && yum  install devtoolset-8-gcc* -y#安装gcc8.3.1版本
        source /opt/rh/devtoolset-8/enable#激活脚本运行

命令运行完毕后,会生成 /opt/rh/devtoolset-8,在此路径下,一个是gcc激活脚本,另一个是gcc8.3.1版本。

当然,我们可以把第一个命令8换成别的数字,例如6,或者7,或者9,但是无法指定更为详细的版本,只能安装提供的大版本哦~~~~。

需要注意的是,激活脚本仅仅在当次有效,重启后环境变量会恢复,因为脚本并没有将环境变量写入文件,仅仅是source了一下。如果需要下次重启后还可以自动使用gcc高版本,请将脚本放入开机启动。

最后一句,指定更细的版本必须编译安装了,这不在本文探讨内。

当然,这个源还可以安装rust和go语言的环境,实现快速搭建go和rust语言环境。

例如:yum install devtoolset-7-go  -y