ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found

ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

错误信息

ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /data10/gaoxl/install/anaconda3/envs/paddle37/lib/python3.7/site-packages/scipy/_lib/_uarray/_uarray.cpython-37m-x86_64-linux-gnu.so)

出处

Linux系统中,在安装新版本torch时,运行easyocr示例代码时报的错,原因是glibc版本较低

easyocr -l ch_sim en -f 0010.jpg --detail=1 --gpu=True

检查动态库:

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

输出如下:

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBC_2.3
GLIBC_2.2.5
GLIBC_2.14
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH

可以看到gcc确实没有所需的版本3.4.21

解决

方案一

因为我使用的anaconda安装的python环境,anaconda中已经有了新版本glibc,所以复制anaconda中的glibc到/usr/lib64/中
详细操作如下:

  1. 查找所有gcc动态库,找到anaconda
find / -name "libstdc++.so*"

输出如下:

/data10/shao/install/anaconda3/lib/libstdc++.so.6
/data10/shao/install/anaconda3/lib/libstdc++.so.6.0.26
/data10/shao/install/anaconda3/lib/libstdc++.so

将上面的最新动态库libstdc++.so.6.0.21复制到/usr/lib64目录下:

cp /data10/shao/install/anaconda3/lib/libstdc++.so.6.0.26 /usr/lib64/

进入目录/usr/lib64

cd /usr/lib64
ll | grep libstdc

备份

mv libstdc++.so.6 libstdc++.so.6.bak

创建新的软连接,指向刚拷贝的库

ln -s libstdc++.so.6.0.21 libstdc++.so.6

重新运行检查动态库的命令:

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

输出如下:

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_3.4.26
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.6
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH

结束。

方案二

  1. 编译安装gcc库
    Linux升级安装GCC

  2. 将gcc最新版本的动态库替换系统中老版本的动态库
    替换老版本动态库

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
该错误提示表明在安装飞浆模块后,发生了一个导入错误。具体错误是/lib64/libstdc.so.6库的版本不符合要求,需要GLIBCXX_3.4.20版本,但当前系统中没有找到这个版本的库。 为了解决这个问题,我们可以通过以下两个步骤来解决: 1. 首先,我们需要查看系统中GLIBCXX的版本信息。可以使用命令行输入以下命令:`strings /usr/lib64/libstdc.so.6 | grep GLIBCXX`。这个命令会列出libstdc.so.6库中包含的GLIBCXX版本信息。 2. 其次,我们可以通过查看软连接来确认系统中libstdc.so.6指向的版本。使用命令行输入以下命令来查看软连接:`ls -l /usr/lib64/libstdc.so.6`。这个命令会显示libstdc.so.6的软连接信息,其中包括指向的具体版本文件。 根据以上信息,可以判断如果当前系统中没有GLIBCXX_3.4.20版本的库,那么可能需要更新或者安装新的版本。你可以尝试升级libstdc++库来满足飞浆模块对GLIBCXX_3.4.20版本的要求。具体的升级步骤可能因系统不同而有所差异,你可以根据自己的系统文档或者搜索引擎来查找相关的升级方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [libstdc++.so.6.0.25](https://download.csdn.net/download/qq_39619888/87474616)[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^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *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^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值