写在前面
自己的环境:
Ubuntu 16.04 , ros-kinetic
本文转载自
[1] 凤⭐尘. ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22’ not found [EB/OL]. https://blog.csdn.net/qq_36396104/article/details/88774797, 2019-03-24/2022-03.24.
1. 报错描述
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found
通过报错,主要原因是程序的编译器的版本是比较低,缺少GLIBCXX_3.4.22,其实就是少了libstdc++.so.6.0.22。
2. 解决方法
sudo find / -name 'libstdc++.so*'
这里主要是看:ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22’ not found
注意:这里libstdc++.so.6.0.22存放的地址/usr/lib/x86_64-linux-gnu/就要具体情况具体分析了。
ibstdc++.so.6.0.22下载地址: https://pan.baidu.com/s/1bj_wPSfuFuvMOOSbpBstkA?pwd=n723
提取码: n723
下载的文件是.deb文件,解压
cd Downloads/
ar -x lib64stdc++6_6.2.0-5ubuntu12_i386.deb
得到一个data.tar.xz文件,解压
tar xvJf data.tar.xz
解压后的文件在Download/usr/lib64/里面
cd ./usr/lib64/
然后复制到之前报错的文件夹里面,我这里是 /usr/lib/x86_64-linux-gnu/
mv libstdc++.so.6.0.22 /usr/lib/x86_64-linux-gnu/
重新建立软连接
cd /usr/lib/x86_64-linux-gnu/
rm libstdc++.so.6
ln libstdc++.so.6.0.22 libstdc++.so.6
这里基本上就完成了
3. 转载链接
[1] 凤⭐尘. ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22’ not found [EB/OL]. https://blog.csdn.net/qq_36396104/article/details/88774797, 2019-03-24/2022-03.24.