1、查看gcc版本
gcc -v
发现gcc版本为8.x.x,而跑某个项目的finetune需要gcc-9,之前搜索过很多更新gcc版本的方式,例如https://blog.csdn.net/xunye_dream/article/details/108918316?spm=1001.2014.3001.5506,但执行指令
sudo yum install centos-release-scl
时报错如下
在此给出一种其他方式。
2、具体方式
(1)下载gcc-toolset-x-gcc的rpm文件上传到服务器
例如:gcc-toolset-9-gcc-9.2.1-2.3.el8.x86_64.rpm
(由于企业内部提供了镜像网站,因此本人在企业内部镜像上下载。不确定非企业用户可以在哪里下载,或许https://centos.pkgs.org/9-stream/centos-appstream-x86_64/gcc-11.4.1-2.3.el9.x86_64.rpm.html网站可以下载类似的文件。)
- gcc-9.2.1表示想要得到的gcc版本
- el代表 Enterprise Linux
- 8代表这个软件包是为第 8 版本的 Enterprise Linux 系统准备的
- x86_64为处理器架构
需要根据自己的实际情况进行下载,下载后上传到服务器。需记住路径。
(2)安装gcc-toolset-x-gcc的rpm文件
sudo yum install /path/to/gcc-toolset-9-gcc-9.2.1-2.3.el8.x86_64.rpm
此时报错
Package: gcc-toolset-9-gcc-9.2.1-2.3.el8.x86_64 (/gcc-toolset-9-gcc-9.2.1-2.3.el8.x86_64)
Requires: gcc-toolset-9-runtime
即安装gcc-toolset-x-gcc的rpm文件需要gcc-toolset-9-runtime文件,因此需要下载gcc-toolset-9-runtime-9.0-4.el8.x86_64.rpm文件并上传到服务器。
此处el8和x86_64也需要根据自己机器的实际情况进行下载。
(3)安装gcc-toolset-9-runtime文件
sudo yum install /path/to/gcc-toolset-9-runtime-9.0-4.el8.x86_64.rpm
中间会询问
Is this ok [y/d/N]:
输入y,回车,等待complete。
(4)安装gcc-toolset-x-gcc的rpm文件
sudo yum install /path/to/gcc-toolset-9-gcc-9.2.1-2.3.el8.x86_64.rpm
同样会询问Is this ok,输入y,回车,等待complete。
此时输入gcc -v会发现gcc版本没有改变,还是原来的版本,因此还要进行接下来的操作。
(5)激活环境
cd /opt/rh/gcc-toolset-9
ls -l
会发现在/opt/rh/gcc-toolset-9文件夹下存在enable和root文件:
键入source enable后再查看gcc版本,会发现gcc已升级:gcc version 9.2.1 20191120 (Red Hat 9.2.1-2) (GCC)
source enable
gcc -v