在linux服务器上运行程序导入模型时,出现了以下报错:
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /home/tensorflow/anaconda3/envs/imagetest/lib/python3.6/site-packages/scipy/fft/_pocketfft/pypocketfft.cpython-36m-x86_64-linux-gnu.so)
根据描述的意思应该的当前的libstdc++.so.6缺少了“GLIBCXX_3.4.22”这个版本,是由于libstdc库版本过旧导致。用以下代码检查所有的版本
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
得到的结果如下,发现确实没有GLIBCXX_3.4.22
重新安装libstdc++6
sudo apt-get install libstdc++6
遇到如下问题
解决办法:删除所有的以前的源链接地址,再更新源地址:
1 sudo rm -rf /var/lib/apt/lists/* -vf 2 sudo apt-get update
更新完毕后再次安装libstdc++6,安装成功。可以看到GLIBCXX_3.4.22已经被添加进来。
参考:https://blog.csdn.net/u011961856/article/details/79644342