CentOS7安装glibc-2.28

 

1.升级make到版本4

yum -y install bison #安装glibc需要此安装包
wget
http://ftp.gnu.org/gnu/make/make-4.3.tar.gz tar -xf make-4.3.tar.gz cd make-4.3 ./configure --prefix=/usr/local/make make && make install cd /usr/bin && mv make make.bak ln -sv /usr/local/make/bin/make /usr/bin/make #检查make版本 make --version

2.安装gcc 9.3

#访问清华园镜像网站(https://mirrors.tuna.tsinghua.edu.cn/gnu),下载gcc9.3
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz

#安装gcc的依赖包
yum -y install gcc-c++ bzip2

#解压、编译安装
tar -zxf gcc-9.3.0.tar.gz
cd gcc-9.3.0
#下载编译所需要的依赖包
./contrib/download_prerequisites

#编译安装
mkdir /usr/local/gcc930
mkdir build && cd build
#指定安装目录 指定支持的开发语言 关闭32位支持(不关闭如果缺相关的库会报错,一般用不到,直接关闭即可)
../configure --prefix=/usr/local/gcc930 --enable-languages=c,c++,go --disable-multilib
make -j32
make install

#查看gcc、g++版本
/usr/local/gcc930/bin/gcc --version
/usr/local/gcc930/bin/g++ --version

#建立gcc新版本软链接
mv /usr/bin/gcc /usr/bin/gcc485
mv /usr/bin/g++ /usr/bin/g++485
ln -s /usr/local/gcc930/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc930/bin/g++ /usr/bin/g++
#查看gcc、g++版本:
gcc --version
g++ --version

#添加LD_LIBRARY_PATH环境变量
vim ~/.bash_profile ,添加以下内容:
export LD_LIBRARY_PATH=/usr/local/gcc-9.3.0/lib
source ~/.bash_profile

 

3.安装glibc-2.28

wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz
tar -xf glibc-2.28.tar.gz
cd glibc-2.28 && mkdir build && cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-werror
#make报错的话,加上 --disable-werror参数即可解决。
make && make install
#最后的error信息可忽略

验证glibc-2.28是否安装成功

strings /lib64/libc.so.6 |grep GLIBC |more
或
ldd --version

 

如果提示“/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found”,则更新/usr/lib64/libstdc++.so.6到新版本

先查看各个libstdc__.so版本:

strings /usr/lib64/libstdc++.so.6.0.19 |grep GLIBC |more
#支持GLIBC到3.4.19版本

strings /usr/local/gcc930/lib64/libstdc++.so.6.0.28 |grep GLIBC |more
#支持GLIBC到3.4.28版本

 

 如果需要3.4.28版本,则通过如下方式配置:

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
ln -s /usr/local/gcc930/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6

 3.4.30版本,需要安装gcc 12版本

posted on 2025-04-08 09:13  momingliu11  阅读(1427)  评论(0)    收藏  举报