如何处理 Arch Linux 上缺少 libcrypt.so.1 的情况?

如何处理 Arch Linux 上缺少 libcrypt.so.1 的情况?

如何处理libcrypt.so.1Arch 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

相关内容