问题描述

Pytorch加载多头注意力机制时,报错为:/.conda/envs/prob/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.32' not found。

问题分析

该问题主要是系统GCC版本与当前环境GCC版本不同导致的。即项目在编译时,用的是系统的gcc 而运行时使用 当前环境的 Gcc 即出现了此问题。

具体可使用下面的命令检查

这是检测系统中是否含有 GLIBCXX_3.4.32(需要GCC版本不低于13.3才有)

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX_3.4.32

但是注意当前环境 GCC 版本11.2 所以在当前环境中查找 GLIBCXX_3.4.32时

 strings /home/train/.conda/envs/prob/lib/libstdc++.so.6 | grep GLIBCXX_3.4.32

 strings /home/train/.conda/envs/prob/lib/libstdc++.so.6 | grep GLIBCXX 

问题解决

将当前环境中的GCC升级,或者直接卸载当前环境,直接安装对应GCC版本的环境。

如果不想重装环境,切换至环境中,直接升级 GCC 版本即可,使用以下命令:

conda install -c conda-forge gcc=13.3.0

然后再使用命令检查

 strings /home/train/.conda/envs/prob/lib/libstdc++.so.6 | grep GLIBCXX 

问题解决。 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐