解决libstdc++.so.6: version `GLIBCXX_3.4.22' not found

系统Ubuntu16.04,使用的是Anaconda。

由于需要编译程序,需要用opencv,然后直接安装了

conda install opencv

出现了问题如下

ImportError: /home/pc314/anaconda3/envs/tensorflow/lib/python3.5/site-packages/zmq/backend/cython/../../../../.././libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /home/pc314/anaconda3/envs/tensorflow/lib/python3.5/site-packages/../../libopencv_objdetect.so.3.3)

主要原因是程序的编译器的版本是比较低,缺少GLIBCXX_3.4.22,其实就是少了libstdc++.so.6.0.22。查一下存在这个东西存在哪里,

sudo find / -name 'libstdc++.so*'

这里面的东西存在于/usr/lib/和/home/pc314/anaconda3/envs/tensorflow/lib/ 网上好多是关于/usr/lib/下的问题,单纯的在/usr/lib/下修改时没有用的哦。因为编译环境在Anaconda里面。可以运行下面的命令看一下是是否真的缺少

strings /home/pc314/anaconda3/envs/tensorflow/lib/libstdc++.so.6 |grep GLIBCXX  

安装

libstdc++.so.6.0.22下载地址,这个地址没找到,应该是有的。嫌麻烦直接在csdn里面下载了一个要积分的地址

下载的文件是.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/

然后复制到目的文件夹里面

mv libstdc++.so.6.0.22  ~/anaconda3/envs/tensorflow/lib/

重新建立软连接

cd ~/anaconda3/envs/tensorflow/lib/
rm libstdc++.so.6
ln libstdc++.so.6.0.22 libstdc++.so.6

这里基本上就完成了

参考

http://blog.csdn.net/xiaolong2w/article/details/23915171

http://blog.csdn.net/zhu_charles/article/details/75914060

  • 14
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
回答: 当你的代码报错"libstdc++.so.6: version `GLIBCXX_3.4.21' not found"时,这意味着你的系统中缺少了GLIBCXX_3.4.21版本的libstdc++库。\[3\]为了解决这个问题,你可以尝试更新libstdc++库。首先,你可以使用命令"locate libstdc++.so.6"来查找系统中不同版本的libstdc++库。通常,这个库会存在于多个位置,比如系统升级或者conda等工具的安装会导致存在高版本的libstdc++.so.6.3.30、libstdc++.so.6.4.30等。\[2\]然后,你可以尝试更新这个库,确保你的系统中有GLIBCXX_3.4.21版本的libstdc++库。你可以使用命令"ls -l /usr/lib64/libstdc++.so*"来查看软连接,确认当前系统中的libstdc++.so.6版本。\[3\]如果你的系统中没有GLIBCXX_3.4.21版本的库,你可以尝试更新或安装这个版本的libstdc++库来解决问题。 #### 引用[.reference_title] - *1* [/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found](https://blog.csdn.net/yuzhao727/article/details/124281782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [任何类似问题 libstdc++.so.6: version `GLIBCXX_3.4.26’ not found 的一个通用解决方法](https://blog.csdn.net/weixin_45503019/article/details/127526420)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [conda环境下“/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found”问题解决](https://blog.csdn.net/lsb2002/article/details/131456857)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值