背景
最近想升级一下gcc
但是发现自己编译的话非常麻烦
记得之前CentOS7的时候有一个scl的处理
发现CentOS8 已经没有scl的仓库了
简单验证了一下好像到了 CentOS8的appstream的仓库中.
所以今天简单总结一下升级gcc以及多版本的验证与简单使用.
方式与方法
获取 来源
wget -O etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
sed -i 's/$releasever/8/g' etc/yum.repos.d/CentOS-Base.repo
安装必备软件
yum install -y scl-utils scl-utils-build
查看toolset
yum search gcc-toolset
进行验证
gcc -v
[root@Grafana ~]# gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-linux-gnu/7.3.0/lto-wrapper
目标:aarch64-linux-gnu
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,fortran,lto --enable-plugin --enable-initfini-array --disable-libgcj --without-isl --without-cloog --enable-gnu-indirect-function --build=aarch64-linux-gnu --with-stage1-ldflags=' -Wl,-z,relro,-z,now' --with-boot-ldflags=' -Wl,-z,relro,-z,now' --with-multilib-list=lp64
线程模型:posix
gcc 版本 7.3.0 (GCC)
进行安装版本
# 11版本
yum -y install gcc-toolset-11-gcc gcc-toolset-11-gcc-c++
# 10版本
yum -y install gcc-toolset-10-gcc gcc-toolset-10-gcc-c++
# 9 版本
yum -y install gcc-toolset-9-gcc gcc-toolset-9-gcc-c++
切换版本的方法
# 11版本
[root@Grafana ~]# source opt/rh/gcc-toolset-11/enable
[root@Grafana ~]# gcc -v
gcc version 11.2.1 20210728 (Red Hat 11.2.1-1) (GCC)
# 10版本
[root@Grafana ~]# source opt/rh/gcc-toolset-10/enable
[root@Grafana ~]# gcc -v
gcc version 10.3.1 20210422 (Red Hat 10.3.1-1) (GCC)
# 9版本
[root@Grafana ~]# source /opt/rh/gcc-toolset-9/enable
[root@Grafana ~]# gcc -v
gcc version 9.2.1 20191120 (Red Hat 9.2.1-2) (GCC)
文章转载自济南小老虎,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




