Ubuntu 20.04 upgrade, Python missing libffi.so.6
If you are using pyenv, you should just uninstall the used python version and then reinstall it.
Example:
pyenv uninstall 3.7.4
pyenv install 3.7.4
It's cleaner and safer than renaming system library from my point of view.
It seems like I fixed it. I could be wrong, but here is what I think happened:
- Ubuntu 20.04 upgraded libffi6 to libffi7
- Python is still looking for libffi6
What I did to fix it :
Locate libffi.so.7
in your system
$ find /usr/lib -name "libffi.so*"
Create a simlink named libffi.so.6
that points to libffi.so.7
:
sudo ln -s /usr/path/to/libffi.so.7 /usr/lib/path/to/libffi.so.6
UPDATE:
As noted by many users, this fix could have unintended consequences. The better way to do it is to reinstall python as @amichaud explained. This should be used as a last resort IF you're not using pyenv/virtualenv/etc in which case removing python will cause a lot of dependencies to be removed as well.