我使用的是Anaconda 4.10.3
,搭配Python 3.9.7
和Scipy 1.7.1
在Ubuntu 16.04.6
上。我需要运行一个脚本,其中使用了Scipy的优化功能,但它报错如下:
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version 'GLIBCXX_3.4.26' not found (required by /home/user/anaconda3/envs/work/lib/python3.9/site-packages/scipy/optimize/_group_columns.cpython-39-x86_64-linux-gnu.so)
根据错误提示,系统中的libstcc++.so.6
没有提供GLIBCXX_3.4.26
,这一点我已经通过下面的方法进行了验证。
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
然后我运行了 conda install libgcc
并验证了 strings /home/user/anaconda3/envs/work/lib/libstdc++.so.6.0.29 | grep GLIBCXX
显示出了 GLIBCXX_3.4.26
。接下来我将以下代码添加到我的 .bashrc
文件,并运行了 source ~/.bashrc
LD_LIBRARY_PATH=/home/user/anaconda3/envs/work/lib/:$LD_LIBRARY_PATH
在此之后运行脚本时,我仍然会得到相同的错误提示:ImportError:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:版本“GLIBCXX_3.4.26”未找到
。
我想过降级scipy,但难道没有更好的方法可以修复这个问题而不用降级吗?