因为某些原因,pyenv
由于以下问题,无法安装任何版本的 pythonlibffi
。我已经安装了所有库,但我得到:
*** WARNING: renaming "_ctypes" since importing it failed: libffi.so.8: cannot open shared object file: No such file or directory
令人好奇的是libffi
已安装,但版本不同:
❯ find /usr -name '*ffi.so*'
/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.7.1.0
所以,构建正在尝试libffi.so.8
虽然libffi.so.7
已安装。
谁能解释一下基于 Debian 的系统如何选择共享库的版本?我已经检查过.h
and .pc
文件,但我没有想到为什么它会引用版本 8。
❯ ldconfig -p | grep libffi.so
libffi.so.7 (libc6,x86-64) => /lib/x86_64-linux-gnu/libffi.so.7
libffi.so.7 (libc6) => /lib/i386-linux-gnu/libffi.so.7
libffi.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libffi.so
补充说明:我注意到libffi
is also安装者homebrew
。然而,它与 Mint 安装的版本相同,所以这不是冲突(据我所知)。
有什么建议么?
❯ uname -a
Linux mcrowe-XPS-15-9560 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
❯ cat /etc/lsb-release
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=20.2
DISTRIB_CODENAME=uma
DISTRIB_DESCRIPTION="Linux Mint 20.2 Uma"