ImportError: libffi.so.7: cannot open shared object file: No such file or directory解决方法

本机环境Centos7,Arch Linux方法与本文提出解决方案不同。

在linux中强制将Anaconda进行更新或者对Python强制更新时,

conda update --force conda

使得原机器的python3.6.4版本升级成最新的Anaconda附带python3.6.10版本,出现Importer break的情况,如下所示:

ImportError: libffi.so.7: cannot open shared object file: No such file or directory解决方法_第1张图片

ImportError: libffi.so.7: cannot open shared object file: No such file or directory

究其原因是其源码编译错误,自然考虑到编译文件。首先找到libffi文件所在位置,libffi文件是一个二进制源码。如图中所示,其所在位置为anaconda下的lib目录内,进入其目录,笔者这里默认的是base环境,若是其它虚拟环境需要进入相应的虚拟环境目录,感谢如下小伙伴的补充:

ImportError: libffi.so.7: cannot open shared object file: No such file or directory解决方法_第2张图片 

cd ~/anaconda3/lib

这里给出一个可行方案:将所缺失文件设置成一个软连接,连接到该目录下同一性质文件,这里报错是缺失libffi.so.7文件,但是该目录下存在libffi.so.6文件,故将其软连接于libffi.so.6文件上,问题得到解决。

ln -s libffi.so.6 libffi.so.7

如若出现ImportError: cannot import name 'create_prompt_application'问题

ImportError: libffi.so.7: cannot open shared object file: No such file or directory解决方法_第3张图片

最后再升级一下ipython就可以得到解决

pip install ipython

相同原理,如若缺失libffi.so.6文件,步骤相同,不加赘述。

你可能感兴趣的:(Linux,Python,python,linux)