Скайп не запустится:

$ skype &
skype: error while loading shared libraries: libssl.so.10: wrong ELF class: ELFCLASS64
$ ldd /usr/bin/skype |grep ssl
libssl.so.10 => not found

ОК, отсутствует libssl. Где это находится?

$ ls -l /usr/lib/libssl.so*
lrwxrwxrwx. 1 root root  ... /usr/lib/libsssl.so -> libcrypto.so.1.0.1e
lrwxrwxrwx. 1 root root  ... /usr/lib/libssl.so.10 -> libssl.so.6
-rwxr-xr-x. 1 root root  ... /usr/lib/libssl.so.1.0.1e
lrwxrwxrwx. 1 root root  ... /usr/lib/libssl.so.6 -> /usr/lib64/libssl.so.10

Хорошо, это указывает на libssl.so.6, который в свою очередь указывает на 64-битную версию.

$ ls -l /usr/lib64/libssl.so*
lrwxrwxrwx. 1 root root  ... /usr/lib64/libssl.so.10 -> libssl.so.1.0.1e
-rwxr-xr-x. 1 root root  ... /usr/lib64/libssl.so.1.0.1e
lrwxrwxrwx. 1 root root  ... /usr/lib64/libssl.so.6 -> /usr/lib64/libssl.so.10

Итак, почему моя цепочка ссылок не взята по скайпу? (Идентичная проблема существует с libcrypto, кстати).

1 ответ1

0

Для /usr/lib/libssl.so.6 совершенно неправильно указывать на /usr/lib64/libssl.so.10 поэтому у вас есть проблема. Ссылка в /usr/lib должна указывать на 32-битную библиотеку, поэтому вы должны увидеть что-то вроде этого:

$ ls -l /usr/lib/libssl.*
lrwxrwxrwx 1 root root   16 Oct 31 18:07 /usr/lib/libssl.so.10 -> libssl.so.1.0.1e*
-rwxr-xr-x 1 root root 402K Oct 29 16:16 /usr/lib/libssl.so.1.0.1e*

а также:

$ ls -l /usr/lib64/libssl.*
lrwxrwxrwx 1 root root   16 Oct 31 18:07 /usr/lib64/libssl.so -> libssl.so.1.0.1e*
lrwxrwxrwx 1 root root   16 Oct 31 18:07 /usr/lib64/libssl.so.10 -> libssl.so.1.0.1e*
-rwxr-xr-x 1 root root 429K Oct 29 16:16 /usr/lib64/libssl.so.1.0.1e*

Для libssl.so.6 также неправильно указывать на libssl.so.10 в любом каталоге, так как в основном это означает, что две библиотеки с разными SONAME совместимы. Я предполагаю, что вы добавили это вручную, чтобы попытаться заставить работать какое-то другое программное обеспечение?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .