Centos7.9 gcc4.8.5升级到gcc11
Centos7.9 gcc编译器默认版本为4.8.5 ,有时候会需要跟高版本的编译器,例如遇到“Qt requires c++11 support”的问题便需要升级gcc编译器。这里以gcc11为例简单讲述一下升级过程
安装centos-release-scl,出现权限问题使用超级用户(sudo)或者root进行安装
1 yum install centos-release-scl
安装devtoolset,如果想安装其他版本,例如gcc7.* 改为devtoolset-7-gcc* 即可
1 yum install devtoolset-11-gcc*
启用gcc11,devtoolset会安装在/opt/rh目录下
1 cd /opt/rh/devtoolset-11/
每个版本下面都会有个enable文件,执行以下命令即可启用
1 source ./enable
如果想要切换到不同的版本时,只要执行命令即可
1 source /opt/rh/devtoolset-11/enable
直接替换相应软连接,该方法可以避免每次都要进行enable
1 mv /usr/bin/gcc /usr/bin/gcc.bak 2 3 ln -s /opt/rh/devtoolset-11/root/bin/gcc /usr/bin/gcc 4 5 mv /usr/bin/g++ /usr/bin/g++.bak 6 7 ln -s /opt/rh/devtoolset-11/root/bin/g++ /usr/bin/g++ 8 9 mv /usr/bin/c++ /usr/bin/c++.bak 10 11 ln -s /opt/rh/devtoolset-11/root/bin/c++ /usr/bin/c++ 12 13 mv /usr/bin/cpp /usr/bin/cpp.bak 14 15 ln -s /opt/rh/devtoolset-11/root/bin/cpp /usr/bin/cpp 16 17 mv /usr/bin/cc /usr/bin/cc.bak 18 19 ln -s /opt/rh/devtoolset-11/root/bin/cc /usr/bin/cc