如何处理libcrypt.so.1
Arch Linux 上的缺失问题?
尝试运行openoffice4
(自由办公室二进制)结果:
/opt/openoffice4/program/javaldx: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
/opt/openoffice4/program/soffice.bin: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
该文件libcrypt.so.1
确实不存在。然而,有:
└[/usr/lib]> ls -al libcrypt*
lrwxrwxrwx 1 root root 16 Dec 18 11:31 libcrypto.so -> libcrypto.so.1.1
-rwxr-xr-x 1 root root 2999144 Dec 18 11:31 libcrypto.so.1.1
lrwxrwxrwx 1 root root 23 Feb 3 12:16 libcryptsetup.so -> libcryptsetup.so.12.7.0
lrwxrwxrwx 1 root root 23 Feb 3 12:16 libcryptsetup.so.12 -> libcryptsetup.so.12.7.0
-rwxr-xr-x 1 root root 484192 Feb 3 12:16 libcryptsetup.so.12.7.0
lrwxrwxrwx 1 root root 17 Feb 2 08:12 libcrypt.so -> libcrypt.so.2.0.0
lrwxrwxrwx 1 root root 17 Feb 2 08:12 libcrypt.so.2 -> libcrypt.so.2.0.0
-rwxr-xr-x 1 root root 165824 Feb 2 08:12 libcrypt.so.2.0.0
简单地创建一个新的符号链接会libcrypt.so.1
失败,因为这是不正确的版本:
/opt/openoffice4/program/javaldx: /usr/lib/libcrypt.so.1: version `GLIBC_2.2.5' not found (required by /opt/openoffice4/program/libuno_sal.so.3)
/opt/openoffice4/program/soffice.bin: /usr/lib/libcrypt.so.1: version `GLIBC_2.2.5' not found (required by /opt/openoffice4/program/libuno_sal.so.3)
我尝试libcrypt.so.1
使用以下命令查看包提供的内容pacman -F
:
这是:
core/glibc 2.33-5 [installed: 2.35-2]
usr/lib/libcrypt.so.1
core/lib32-glibc 2.33-5 [installed: 2.35-2]
usr/lib32/libcrypt.so.1
community/aarch64-linux-gnu-glibc 2.34-1
usr/aarch64-linux-gnu/lib/libcrypt.so.1
community/riscv64-linux-gnu-glibc 2.32-1 (risc-v)
usr/riscv64-linux-gnu/lib/libcrypt.so.1
后两者不适用于我,因为架构不同。
重新安装 glibc 和 lib32-glibc 没有解决我的问题。此外,检查有pacman -Ql
问题的文件 ( libcrypt.so.1
) 是否确实存在于 glibc 和 lib32-glibc 中,并没有显示它存在。
此问题似乎是在引入较新版本的 glibc 的更新后发生的:
[ALPM] upgraded glibc (2.33-5 -> 2.35-2)
我也尝试过简单地重新安装 LibreOffice。没有什么变化。
答案1
我遇到了同样的问题,我通过安装解决了这个问题libxcrypt 兼容包,现在可以从核存储库。
答案2
我还不能发表评论,所以我正在扩展正确的内容波科利的回答 吉尔·奎诺 (Gilles Quenot)这里。
到安装libxcrypt-compat
你缺少 arch (或 manjaro)上的 cli,你可以使用其中之一:
## Using pacman
# pacman needs to be run with root privilege (sudo):
sudo pacman -S core/libxcrypt-compat
## Using yay
# Stating repository (Core) to prevent installing the incorrect package:
yay -S --repo core/libxcrypt-compat
答案3
要在 archlinux 上搜索特定所需的缺失文件:
$ pkgfile -s libcrypt.so.1
core/libxcrypt-compat
community/aarch64-linux-gnu-glibc
community/riscv64-linux-gnu-glibc