ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found
flyfish
·
ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29’ not found
flyfish
解决步骤如下
一、从 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 文件中提取所有可打印的字符串,并查找其中包含 GLIBCXX 的那些行
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
strings 是一个命令行工具,用于从二进制文件中提取可打印的字符串。/usr/lib/x86_64-linux-gnu/libstdc++.so.6 是一个库文件的路径,它是GCC编译器提供的C++标准库的一个版本。| 是管道符号,用于将前一个命令的输出作为后一个命令的输入。grep GLIBCXX 是用来搜索包含特定模式(这里是 GLIBCXX)的行。
二、在整个文件系统的根目录下查找所有名字以 libstdc++.so.6 开头的文件
sudo find / -name "libstdc++.so.6*"
find /:这是find命令的基本用法,用于在指定的目录(这里是根目录/)及其子目录中查找文件。-name "libstdc++.so.6*":这是一个选项,用于指定要查找的文件名匹配模式。这里的libstdc++.so.6*表示任何以libstdc++.so.6开始的文件名。

找到了
/home/oem/anaconda3/lib/libstdc++.so.6.0.29
三、从 /home/oem/anaconda3/lib/libstdc++.so.6.0.29 文件中提取所有可打印的字符串,并查找其中包含 GLIBCXX 的那些行
strings /home/oem/anaconda3/lib/libstdc++.so.6.0.29 | grep GLIBCXX

找到了
四、复制 删除旧链接 创建新链接
复制
sudo cp /home/oem/anaconda3/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

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)