#yum -y install centos-release-scl
#yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
#scl enable devtoolset-9 bash
注意:scl命令启用只是临时的,推出xshell或者重启就会恢复到原来的gcc版本。
若要长期生效的话,执行如下:
echo “source /opt/rh/devtoolset-9/enable” >>/etc/profile
重新编译安装redis即可。
提前下载gcc最新的源码包
#wget http://ftp.gnu.org/gnu/gcc/gcc-9.1.0/gcc-9.1.0.tar.gz
#wget http://ftp.gnu.org/pub/gnu/gmp/gmp-6.1.0.tar.bz2
#wget https://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
#wget http://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
#wget http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/infrastructure/isl-0.16.1.tar.bz2
上传至服务器上
#tar -xvf gcc-9.3.0.tar.gz
#cd gcc-9.3.0
查看所需安装包:# vi ./contrib/download_prerequisites
已经提前下载好了,直接手动安装
将gmp、mpfr、mpc、isl安装放到cd /usr/local/gcc-9.3.0目录下并解压:
#yum -y install bzip2 安装bzip命令,可下载好包上传安装
#bzip2 -d gmp-6.1.0.tar.bz2 && tar -xvf gmp-6.1.0.tar
#bzip2 -d mpfr-3.1.4.tar.bz2 && tar -xf mpfr-3.1.4.tar
#tar -xf mpc-1.0.3.tar.gz
#bzip2 -d isl-0.16.1.tar.bz2 && tar -xf isl-0.16.1.tar
创建软连接
#ln -sf gmp-6.1.0 gmp && ln -sf mpfr-3.1.4 mpfr && ln -sf mpc-1.0.3 mpc && ln -sf isl-0.16.1 isl
#mkdir build && cd build
./configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
编译:make;注意此步和上一步,比较耗时,大概会耗时1小时左右,gcc文件会变大
验证:gcc -v;或者g++ -v
如果显示的gcc版本仍是以前的版本,可以查看gcc的安装位置:which gcc;
然后在查看版本 /usr/local/bin/gcc -v,通常gcc都安装在该处位置,如果显示为下图安装成功:
创建软连接
#mv /usr/bin/gcc /usr/bin/gcc4.8
#ln -s /usr/local/bin/gcc /usr/bin/gcc
#gcc -v



