1.查看当前gcc版本
gcc -v
2.安装gcc
下载新版本gcc:阿里云开源镜像站资源目录
用wget(最新版本是gcc-11.2.0):
wget https://mirrors.aliyun.com/gnu/gcc/gcc-10.3.0/gcc-10.3.0.tar.gz
最新的版本是 11.2的
tar -vxf gcc-10.3.0.tar.gz
cd gcc-10.3.0
mkdir build
cd build/
../configure --prefix=/usr/local/gcc-10.3.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
从日志总可以看出有如下报错,故下面每个都安装
configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.
安装依赖:
yum -y install ncurses ncurses-devel flex flex-devel bison bison-devel libmpc libmpc-devel
然后再运行
../configure --prefix=/usr/local/gcc-10.3.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
这一步需要很久很长时间,若是机器性能不好,可能要好几个小时,若是cpu能开线程多,-j后面可以设置的比较大。
make -j10
make install
3.GCC版本更新
shell脚本
#!/bin/bash
mv /usr/bin/gcc /usr/bin/gcc485
mv /usr/bin/g++ /usr/bin/g++485
mv /usr/bin/c++ /usr/bin/c++485
mv /usr/bin/cc /usr/bin/cc485
mv /usr/bin/cpp /usr/bin/cpp485
mv /usr/bin/gcc-ar /usr/bin/gcc-ar485
mv /usr/bin/gcc-nm /usr/bin/gcc-nm485
mv /usr/bin/gcc-ranlib /usr/bin/gcc-ranlib485
ln -s /usr/local/gcc-10.3.0/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc-10.3.0/bin/g++ /usr/bin/g++
ln -s /usr/local/gcc-10.3.0/bin/c++ /usr/bin/c++
ln -s /usr/local/gcc-10.3.0/bin/gcc /usr/bin/cc
ln -s /usr/local/gcc-10.3.0/bin/cpp /usr/bin/cpp
ln -s /usr/local/gcc-10.3.0/bin/gcc-ar /usr/bin/gcc-ar
ln -s /usr/local/gcc-10.3.0/bin/gcc-nm /usr/bin/gcc-nm
ln -s /usr/local/gcc-10.3.0/bin/gcc-ranlib /usr/bin/gcc-ranlib
mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
ln -s /usr/local/gcc-10.3.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
参考资料: