环境
Linux version 3.10.0-1160.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Mon Oct 19 16:18:59 UTC 2020?
?目前gcc版本4.8.5
正文
所需资源可以在gnu安装包下载_开源镜像站-阿里云下载
包括:
- gcc-10.1.0
- gmp-5.0.1
- mpc-1.0.1
- mpfr-3.1.5
?
?全部解压
tar -vxf gmp-5.0.1.tar.bz2
tar -vxf mpfr-3.1.5.tar.xz
tar -vxf mpc-1.0.1.tar.gz
tar -vxf gcc-10.1.0.tar.gz
?
?在/user/local下创建目录
[root@localhost local]# mkdir mpc-1.0.1 [root@localhost local]# mkdir gmp-5.0.1 [root@localhost local]# mkdir mpfr-3.1.5
?安装gmp,返回解压的文件目录:注意查看执行时有没有报错,如果有,针对解决。
[root@localhost soft]# cd gmp-5.0.1/ [root@localhost gmp-5.0.1]# ./configure --prefix=/usr/local/gmp-5.0.1
[root@localhost gmp-5.0.1]# make
[root@localhost gmp-5.0.1]# make install
安装mpfr
[root@localhost gmp-5.0.1]# cd ../mpfr-3.1.5/ [root@localhost mpfr-3.1.5]# ./configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-5.0.1
[root@localhost mpfr-3.1.5]# make
[root@localhost mpfr-3.1.5]# make install
?安装mpc
[root@localhost gmp-5.0.1]# cd ../mpc-1.0.1/ [root@localhost mpfr-3.1.5]#?./configure --prefix=/usr/local/mpc-1.0.1 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5
[root@localhost mpfr-3.1.5]# make
[root@localhost mpfr-3.1.5]# make install
?配置gcc
[root@localhost soft]# cd gcc-10.1.0/ [root@localhost gcc-10.1.0]# mkdir build [root@localhost gcc-10.1.0]# cd build [root@localhost gcc-10.1.0]# ../configure --prefix=/usr/local/gcc-10.1.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-1.0.1
[root@localhost gcc-10.1.0]# make -j4? ? //时间会比较久一点
[root@localhost gcc-10.1.0]# make inistall
?把之前版本gcc相关修改名字,因为版本是4.8.5,所以改名485
[root@localhost bin]# mv /usr/bin/gcc /usr/bin/gcc485 [root@localhost bin]# mv /usr/bin/g++ /usr/bin/g++485 [root@localhost bin]# mv /usr/bin/c++ /usr/bin/c++485 [root@localhost bin]# mv /usr/bin/cc /usr/bin/cc485
?把刚才配置好的gcc链接到环境变量
[root@localhost bin]# ln -s /usr/local/gcc-10.1.0/bin/gcc /usr/bin/gcc [root@localhost bin]# ln -s /usr/local/gcc-10.1.0/bin/g++ /usr/bin/g++ [root@localhost bin]# ln -s /usr/local/gcc-10.1.0/bin/c++ /usr/bin/c++ [root@localhost bin]# ln -s /usr/local/gcc-10.1.0/bin/gcc /usr/bin/cc
?与上类似的
[root@localhost bin]# mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak [root@localhost bin]# ln -s /usr/local/gcc-10.1.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
?最后查看gcc版本
?成功升级
参考
Linux gcc升级全过程,过程超详细_IT邦德的博客-CSDN博客_升级gcc
|