【GCC bug】libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found
在 conda 环境安装 gcc/gxx 之后,运行开始遇到了以下的报错
File "/mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/python3.12/site-packages/google/protobuf/internal/wire_format.py", line 13, in <module>from google.protobuf import descriptorFile "/mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/python3.12/site-packages/google/protobuf/descriptor.py", line 28, in <module>from google.protobuf.pyext import _message
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/python3.12/site-packages/google/protobuf/pyext/_message.cpython-312-x86_64-linux-gnu.so)`
排查发现:
在 conda 环境中找不到 libstdc++.so.6
!不过能找到 libstdc++.so.6.0.33
❯ strings /mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/libstdc++.so.6 | grep GLIBCXX
strings: '/mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/libstdc++.so.6': No such file❯ ls /mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/libstdc++*
/mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/libstdc++.so.6.0.33
看来是软链接出了问题,我尝试了重新在 conda 环境安装 gcc/gxx,但是始终无法解决软链接问题,而且在卸载之后,这个 libstdc++.so.6.0.33
依旧存在,看来是某个库的问题。
这样太难排查了,所以直接采取最简单的办法——自己手动软链接:
ln -s /mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/x86_64-conda-linux-gnu/lib/libstdc++.so.so.6.0.33 \/mnt/data/home/xxxx/miniforge3/envs/GAGAvatar/lib/libstdc++.so.6
问题暂时解决😋