CentOS7升级gcc
CentOS7.5升级gcc到8.3.0版本
1、下载源码包,并解压。gcc官网:https://gcc.gnu.org/
cd /usr/local/src
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-8.3.0/gcc-8.3.0.tar.gz
tar zxf gcc-8.3.0.tar.gz
2、进入gcc目录,安装gcc依赖库
cd gcc-8.3.0
./contrib/download_prerequisites
执行命令后它会自动下载mpfr、gmp、mpc isl这4个库
如果执行报错:tar (child): lbzip2: no exec: no file or directory
解决方法:安装解压软件即可
yum -y install bzip2
3、在新目录中配置、编译、安装
mkdir build
cd build
../configure --prefix=/usr/local/gcc --enable-languages=c,c++ --disable-multilib
make
make install
编译报错:flex:Command not found
解决方法:安装flex
yum -y install flex
再次编译之前建议先清空build目录,不然可能会报错:error: `M4' has changed since the previous run
解决方法:清空build(你自己创建的)目录
rm -rf /usr/local/src/gcc/build/*
如果清空了目录,需要重新做配置再编译
../configure --prefix=/usr/local/gcc --enable-languages=c,c++ --disable-multilib
make
make install
编译很漫长。。。我花了2个多小时。
4、修改软链接后查看gcc版本
mv /usr/bin/gcc /usr/bin/gcc_old ln -s /usr/local/gcc/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++_old
ln -s /usr/local/gcc/bin/g++ /usr/bin/g++ gcc --verson
g++ --version
或者删除之前的版本
yum -y remove gcc
vim /etc/profile.d/gcc.sh
export PATH=$PATH:/usr/local/gcc/bin
source /etc/profile.d/gcc.sh
gcc -v