转载自:
https://blog.csdn.net/hanzheng260561728/article/details/75125891
依赖
yum install gcc gcc-c++ xz -y
插件安装
wget ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.xz
tar -xvf gmp-6.1.2.tar.xz
cd gmp-6.1.2
./configure
make check
make && make install
wget ftp://ftp.gnu.org/gnu/mpfr/mpfr-3.1.5.tar.xz
xz -d mpfr-3.1.5.tar.xz
tar -xvf mpfr-3.1.5.tar
cd mpfr-3.1.5
./configure
make && make install
wget http://ftp.vim.org/languages/gcc/infrastructure/mpc-1.0.3.tar.gz
tar -zxvf mpc-1.0.3.tar.gz
cd mpc-1.0.3
./configure
make && make install
wget http://ftp.vim.org/languages/gcc/infrastructure/cloog-0.18.1.tar.gz
tar -zxvf cloog-0.18.1.tar.gz
cd cloog-0.18.1
./configure
make && make install
下载gcc
wget http://ftp.gnu.org/gnu/gcc/gcc-7.1.0/gcc-7.1.0.tar.gz
解压gcc
tar -zxvf gcc-7.1.0.tar.gz
cd gcc-7.1.0
./contrib/download_prerequisites 在线安装忽略离线(离线安装忽略在线)
根下建立编译输出目录
mkdir gcc-build-7.1.0
进入输出目录,执行命令,并生成makefile
cd gcc-build-7.1.0
../gcc-7.1.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j4 或者 make && make install
提示报错
/gcc-build-7.1.0/./gcc/cc1: error while loading shared libraries: libmpc.so
报错解决依赖库
yum install libgcc.i686 glibc-devel.i686 -y
gcc目录
find / -name gcc
/usr/local/bin/gcc
/usr/local/libexec/gcc
/usr/local/lib/gcc
软连接
cd /usr/bin
ln -s /usr/local/bin/gcc gcc
ln -s /usr/local/bin/g++ g++
查看版本
gcc -v g++ -v 或者 gcc --version g++ --version
更换新的动态库
cp /gcc-build-7.1.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.23 /usr/lib64/
cd /usr/lib64/
rm -rf libstdc++.so.6
ln -s /usr/lib64/libstdc++.so.6.0.23 libstdc++.so.6
检查动态库
strings /usr/lib64/libstdc++.so.6 | grep GLIBC