ImportError:libffi.so.6:无法打开共享对象文件:没有这样的文件或目录



linux服务器未连接到网络。我需要用发球来训练我的深度学习模式。所以,我安装了Anaconda来管理环境。我创建了一个空的环境示例。我已经在Example中安装了离线Python 3.6.7(Linux服务器有Python 3.8.8(;python setup.py install";要在"setuptools-57.0.0"文件夹中安装setuptool,出现错误:ImportError:libffi.so.6:无法打开共享对象文件:没有这样的文件或目录

那么,我该怎么办?我需要更新Python的数据吗?如果不升级Python,该怎么办非常感谢!

点击这个链接,它对我有用。

find /usr/lib -name "libffi.so*"
#== output 
/usr/lib -name "libffi.so*"
/usr/lib/i386-linux-gnu/libffi.so.7
/usr/lib/i386-linux-gnu/libffi.so.7.1.0
/usr/lib/x86_64-linux-gnu/libffi.so
/usr/lib/x86_64-linux-gnu/libffi.so.7
/usr/lib/x86_64-linux-gnu/libffi.so.6
/usr/lib/x86_64-linux-gnu/libffi.so.7.1.0
  • 上面的命令将为您提供路径,只需复制libffi.so.7路径并在下面的cammad中使用。

  • 创建simlink

sudo ln -s /usr/lib/x86_64-linux-gnu/libffi.so.7 /usr/lib/x86_64-linux-gnu/libffi.so.6

我在更新conda后也出现了同样的错误。conda不会安装包:

(myEnv) $ conda install requests
Traceback (most recent call last):
File "/home/me/miniconda2/bin/conda", line 13, in <module>
...
ImportError: libffi.so.6: cannot open shared object file: No such file or directory

我在miniconda的包中找到了libffi.so.6,并创建了一个符号链接:

cd ~/miniconda2/lib
# this would list all libffi and no libffi.so.6 there
ls -lsah libffi*
# there might be different libffi versions, you can delete a link if not working
# I had libffi.so.6 in this folder
ls ../pkgs/libffi-3.3-he6710b0_2/lib/
# created a symlink
ln -s ../pkgs/libffi-3.3-he6710b0_2/lib/libffi.so.6 libffi.so.6
# or you could try creating symlink from libffi.so.7.1.0, both libffi.so.7 and libffi.so.6 were symlinks to it
ln -s ../pkgs/libffi-3.3-he6710b0_2/lib/libffi.so.7.1.0 libffi.so.6

现在~/miniconda2/lib有了libffi.so.6,并且安装工作正常。

如果~/miniconda2/lib中有libffi.so.7.1.0,你可以尝试创建它的符号链接,但我没有。

最新更新