解决/lib64/libc.so.6: version `GLIBC_2.28‘ not found
基本方案
升级升级glibc到2.28版本
升级方法
在根目录运行以下方法
wget https://mirror.bjtu.edu.cn/gnu/libc/glibc-2.28.tar.xz
tar -xf glibc-2.28.tar.xz -C /usr/local/
cd /usr/local/glibc-2.28/
mkdir build
cd build/
../configure --prefix=/usr/local/glibc-2.28
但是一般情况下,运行到../configure --prefix=/usr/local/glibc-2.28
的时候他会报错,这个时候我们不要慌,看清他的报错是什么,有以下三种情况:
情况一:
configure: error: in `/root/test/glibc-2.28/build’:
configure: error: no acceptable C compiler found in $PATH
解决方法:
yum install gcc -y
情况二:
These critical programs are missing or too old: make
Check the INSTALL file for required versions.
解决方法:
wget http://mirrors.ustc.edu.cn/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
make -v
# 此时的 make 还是3.82 与环境变量有关系
/usr/local/make/bin/make -v
whereis make
# 找一下都有哪些 make
cd /usr/bin/
mv make make.bak
# 把默认的 make 改名
ln -sv /usr/local/make/bin/make /usr/bin/make
# 建立一个软连接
make -v
# 查看一下大功告成
情况三:
我自己之前也遇到这个情况了
These critical programs are missing or too old: compiler
Check the INSTALL file for required versions.
这是gcc版本太旧,升级gcc
yum -y install centos-release-scl
yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils
scl enable devtoolset-8 bash
###yum安装完,原来的gcc不覆盖,需要执行enable脚本更新环境变量
source /opt/rh/devtoolset-8/enable
###想保持覆盖,可将其写入~/.bashrc或/etc/profile
echo "source /opt/rh/devtoolset-8/enable" >>/etc/profile
###查看gcc版本
gcc -v
继续升级glibc到2.28版本
wget https://mirror.bjtu.edu.cn/gnu/libc/glibc-2.28.tar.xz
tar -xf glibc-2.28.tar.xz -C /usr/local
cd /usr/local/glibc-2.28/
mkdir build
cd build/
yum install -y bison
sudo ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make //make 运行时间较长,可能会有半小时
###如make没有运行成功,解决error后需要先运行make clean,清除之前make的内容,才能再次执行make
make clean
make -j2
make install
最后查验版本
strings /lib64/libc.so.6 |grep GLIBC
看GLIBC版本是否为2.28
解决/lib64/libc.so.6: version `GLIBC_2.28‘ not found
https://xsunhua.cn/777.html



共有 0 条评论