报错信息
在docker中安装faiss后,测试可以正常导入,但是程序跑起来就会报错,报错信息如下:
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.11′ not found (required by /root/anaconda3/envs/cpu/lib/python3.6/site-packages/faiss/../../../libfaiss.so)
解决方案
首先查看导入错误的目录上有什么文件,发现确实没有需要的“`CXXABI_1.3.11”
strings /usr/lib/x86_64-linux-gnu//libstdc++.so.6 | grep CXXABI
ll /usr/lib/x86_64-linux-gnu//libstdc++.so.6
find /usr -name “libstdc++.so.*”
find / -name “libstdc++.so.*”
cp /root/anaconda3/envs/cpu/lib/libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/
cd /usr/lib/x86_64-linux-gnu/
find /usr -name “libstdc++.so.*”
rm libstdc++.so.6
ln -s libstdc++.so.6.0.29 libstdc++.so.6
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep CXXABI
参考
https://blog.csdn.net/wenroudebaozi/article/details/107564647