CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
编译环境准备
注:(已经安装就无需重复操作)针对CentOS其他请百度
yum -y install bzip2 make gcc gcc-c++
编译安装
1.下载源码 [gcc-9.2.0.tar.gz]
2.解压到目录
如:/data0/cmake/gcc-9.2.0
3.切换到解压目录
cd /data0/cmake/gcc-9.2.0
4.下载必要配置信息
./contrib/download_prerequisites
5.创建编译文件夹并预编译
mkdir build && cd build && ../configure --prefix=/data0/gcc -enable-checking=release -enable-languages=c,c++,objc,obj-c++ -disable-multilib --enable-bootstrap --enable-threads=posix
6.编译并安装
make -j4 && make install
注:这里的4指的是你的电脑处理器核心有几个,并且此处编译时间很长我用了近2个小时,以下是编译完成的状态
7.重启
reboot
8.备份原来的gcc
mkdir -p /data0/gcc/bak && mv /usr/bin/gcc /data0/gcc/bak/gcc
mv /usr/bin/g++ /data0/gcc/bak/g++
mv /usr/bin/c++ /data0/gcc/bak/c++
mv /usr/bin/cc /data0/gcc/bak/cc
mv /usr/lib64/libstdc++.so.6 /data0/gcc/bak/libstdc++.so.6
9.新建gcc链接
ln -s /data0/gcc/bin/gcc /usr/bin/gcc
ln -s /data0/gcc/bin/g++ /usr/bin/g++
ln -s /data0/gcc/bin/c++ /usr/bin/c++
ln -s /data0/gcc/bin/gcc /usr/bin/cc
cp /data0/gcc/lib64/libstdc++.so.6.0.27 /usr/lib64
cd /usr/lib64
ln -s libstdc++.so.6.0.27 libstdc++.so.6
10.重新运行以下命令检查动态库
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
11.查看gcc版本号
gcc -v
