GLIBCXX_3.4.20 not found 问题解决
前因
最近在编译leveldb时,碰到一个问题:GLIBCXX_3.4.20 not found,
这个提示已经比较明显了,是本地缺少重要的二进制LIB库文件。
本地的二进制文件一般在/usr/lib64
下面,因为我使用的是64位系统。
处理
查看本地系统的 GLIBCXX_版本
1 | strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX |
结果:
1 | GLIBCXX_3.4 |
刚好到 3.4.19,就是没有 3.4.20
三种解决思路
1.在本机上找
如果找到的话,就可以直接使用
1 | find / -name "libstdc++.so*" |
找到libstdc++.so.6.0.25
这个包。
先备份原来的文件,如果新的组件有问题,就扑街了,再将找到的文件放入/usr/lib64
,重新建立软链接。
先备份原来的包,
1 | mv libstdc++.so.6 ~/libstdc++.so.6.bak |
2.手动下载
系统中没有的话,只能自己下载了
1 | wget https://adbin.top/packages/lib64.tar.gz |
可以自动选择缺失部份:
https://pkgs.org/download/libstdc++.so.6
3.yum 安装缺失文件
1 | sh-4.2# yum provides libstdc |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人话翻译机!
评论