29

How do you deal with a missing libcrypt.so.1 on Arch Linux?

Trying to run openoffice4 (the LibreOffice binary) results in:

/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

The file libcrypt.so.1 indeed does not exist. There is, however:

└[/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

Simply creating a new symlink to libcrypt.so.1 fails as this is the incorrect version:

/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)

I've tried to see what package provides libcrypt.so.1 using pacman -F:

Which is:

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

The latter two are not applicable to me as the architecture is different.

Reinstalling glibc and lib32-glibc didn't resolve my issue. Moreover, checking with pacman -Ql to see if the file in question (libcrypt.so.1) is actually present in glibc and lib32-glibc, doesn't show it exists.

This problem appears to have occurred after an update which pulled in a newer version of glibc:

[ALPM] upgraded glibc (2.33-5 -> 2.35-2)

I've also tried to simply reinstall LibreOffice. Nothing changes.

1

3 Answers 3

36

I had the same issue and I fixed it by installing the libxcrypt-compat package, which is now available from the core repository.

0
3

I can't comment yet, so I'm extending the correct answers by pokoli and by Gilles Quenot here.

To install the libxcrypt-compat you're missing with cli on arch (or manjaro), you can use one of these among others:

## 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
0

To search a specific needed missing file on archlinux:

$ pkgfile -s libcrypt.so.1
core/libxcrypt-compat
community/aarch64-linux-gnu-glibc
community/riscv64-linux-gnu-glibc

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .