一文详解如何解决version GLIBCXX_3.4.29 not found问题
首先,运行时出现的问题如下:
ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/wuye/anaconda3/envs/tf2/lib/python3.8/site-packages/google/protobuf/pyext/_message.cpython-38-x86_64-linux-gnu.so)
这个是默认路径下的libstdc++.so.6缺少GLIBCXX_3.4.29,解决方法,如下所示:
(1)使用指令先看下系统目前都有哪些版本的
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
我这里只到3.28,所以确定是缺少GLIBCXX_3.4.29。
(2)来查看当前系统中其它的同类型文件,找到一个版本比较高的
sudo find / -name "libstdc++.so.6*"
版本比较多,就选了一个版本较高的,我这里是3.4.29,使用之前的指令看看其是否包含需要的版本:
strings /home/wuye/anaconda3/envs/tf2/lib/libstdc++.so.6.0.29 | grep GLIBCXX
可以看到有需要的版本,接下来就是建立新的链接到这个文件上
(3)复制到指定目录并建立新的链接
# 复制 sudo cp /home/wuye/anaconda3/envs/tf2/lib/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/ # 删除之前链接 sudo rm /usr/lib/x86_64-linux-gnu/libstdc++.so.6 # 创建新的链接 sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/libstdc++.so.6
之后程序一般是能够成功运行的
【注意】有时候由于权限问题,我们需要查看它们的权限
ll /usr/lib/x86_64-linux-gnu/libstd*
总结
到此这篇关于如何解决version GLIBCXX_3.4.29 not found问题的文章就介绍到这了,更多相关version GLIBCXX_3.4.29 not found问题内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
win10上安装ubunt18双系统过程中出现mmx64.efi not found问题
这篇文章主要介绍了win10上安装ubunt18双系统过程中出现mmx64.efi not found问题,本文虽然内容简单,但是给出了解决方案,需要的朋友可以参考下2019-11-11LVS(Linux Virtual Server)Linux 虚拟服务器介绍及配置(负载均衡系统)
LVS(Linux Virtual Server) 是Unix-like系统中的一个虚拟服务器,是国内贡献给开源组织的一个最优秀的项目之一2012-05-05
最新评论