问题:rar: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21’ not found (required by rar)

img

问题原因(缺乏动态库文件)

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21’下没有GLIBCXX_3.4.21这个版本,简而言之就是/lib64/libstdc++.so.6下的glibc版本太低了。

查看动态库中有哪些版本的glibc(发现缺少3.4.21的这个版本)

      strings /usr/lib64/libstdc++.so.6 | grep GLIBC
    

img

解决方法

由于anaconda中已经有了新版本glibc,所以复制anaconda中的glibc到/usr/lib64/中

查找annaconda的glibc所在位置

      find / -name "libstdc++.so*"
    

img

将该libstdc++.so.6.0.28拷贝到/usr/lib64/目录下

      cp /root/anaconda3/lib/libstdc++.so.6.0.28 /usr/lib64/
    

img

重新设置软链接,使listdc++.so.6.0.28指向listdc++.so.6

      ln -sf /lib64/libstdc++.so.6.0.28 /lib64/libstdc++.so.6
    

img

查看动态库中glibc的版本

      strings /usr/lib64/libstdc++.so.6 | grep GLIBC
    

img

测试rar命令

      rar | head
    

img

解决 “/lib64/libc.so.6: version `GLIBC_2.18’ not found (required by /lib64/libstdc++.so.6)”

依次执行,时间比较长,不要中途退出。

      curl -O http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz
tar zxf glibc-2.18.tar.gz 
cd glibc-2.18/
mkdir build
cd build/
../configure --prefix=/usr
make -j2
make install
    

rar安装

最新版rar获取下载地址

      cd /opt
wget https://www.rarlab.com/rar/rarlinux-x64-623.tar.gz --no-check-certificate
tar -zxvf rarlinux-x64-623.tar.gz
cd rar
# sudo cp -v rar unrar /usr/local/bin/
ln -s /opt/rar/rar /usr/local/bin/rar
ln -s /opt/rar/unrar /usr/local/bin/unrar
    

声明

作者: liyao

版权:本博客所有文章除特别声明外,均采用CCBY-NC-SA4.O许可协议。转载请注明!

最后更新于 2026-02-18 18:15 history