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
更多推荐
所有评论(0)