libssl.so.10: не вдається відкрити спільний файл об'єкта: такого файлу чи каталогу немає


44

Я намагаюся використовувати twoBitToFa, це невелика програма, випущена Каліфорнійським університетом Санта-Крус, яка розтискає великі файли генома, і я отримую цю помилку:

error while loading shared libraries: libssl.so.10: cannot open shared object file: No     such file or directory

Я спробував шукати, який пакет надає. Я перейшов з Fedora, який мав, yum providesале коли шукав еквівалент Ubuntu, я натрапив, apt-file searchале коли я спробував, що отримав команду не знайшов помилки.

Як я можу отримати цей файл libssl і, загалом, як я можу шукати, який пакет надає файл, щоб я можу це зробити самостійно в майбутньому?


Вам потрібно встановити apt-fileз, sudo apt-get install apt-fileа потім вам потрібно запустити sudo apt-get updateі sudo apt-get install apt-fileі sudo apt-file update.
мчід

Відповіді:


51

Давайте переконайтеся, що ваш SSL встановлений та оновлений:

sudo apt-get update
sudo apt-get install libssl1.0.0 libssl-dev

Тепер дозволимо виправити назву файлу, створивши посилання:

cd /lib/x86_64-linux-gnu
sudo ln -s libssl.so.1.0.0 libssl.so.10
sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10

І нарешті, повідомляємо розробника про цей недолік, щоб він міг його виправити :)


3
У моєму випадку (bedToBigBed від UCSC) мені також довелося виконати подібну команду для "libcrypto" на додаток до вищезгаданої відповіді: sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 / usr / lib / libcrypto.so.10
користувач2821352

2
У моєму випадку мені потрібні були reinstallпакети. sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Едвард Уайльд

Дякую @EdwardWilde, reinstallздається, найпростіше! sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Stéphane Bruckert

Після команд apt-get я досі не бачу жодних файлів libssl * в / lib / x86_64-linux-gnu. (Ubuntu 18)
MiloDC

2
18.04 бібліотеку було встановлено на / usr / lib / x86_64-linux-gnu
Sa'ad

10

Здається, Монго очікує файлів libssl у /usr/lib/:

  sudo ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 /usr/lib/libssl.so.10
  sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.10

# ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/libssl.so.1.1 # ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/libcrypto.so .1.1
waza123

Ці 2 однакові? Вони, схоже, мають різні версії.
Ісін Лю

8

Я один із розробників цих інструментів. Наші бінарні файли офіційно не підтримують Ubuntu (поки що). Офіційний спосіб вирішити цю проблему - це перекомпіляція з джерела, який щойно став надзвичайно простим (див. Https://github.com/NullModel/kentUtils ). Наразі ми намагаємося будувати статичні бінарні файли без залежності від libssl.


Чи є нове посилання? Посилання вгорі говорить, що тепер застаріло.
Рюу

6

У моєму випадку я безглуздо використовував додаток, складений для Red Hat Enterprise Linux на моїй машині Ubuntu. Просто використання версії Ubuntu вирішило проблему.

Це схоже на відсутність підтримки Ubuntu, яку описує Макс.


Те ж саме. Не зовсім впевнений, що це головна причина, але це може бути просто так. Fyi - програмне забезпечення було RoyalRender.
босі

так, у моєму випадку я завантажив mongo tar.gzдля не ubuntu (іншого Linux). Завантажуючи монго, див. Випадаючий список на сайті mongo та виберіть ubuntu.
Максим Єфремов

1
те саме тут ... Нове для Ubuntu ... ця відповідь врятувала мене приблизно через 45 хвилин
гуглінгу

Те ж саме. 1Як іншим вдалося змусити його працювати? Можливо, вони пропустили посилання "Ubuntu" в ОП? 2Чому дистрибуція має значення? Хіба це не складено проти тієї ж архітектури?
Рюу

0

Я якось зіпсував свої посилання під час встановлення нової версії OpenSSL. Щоб виправити цю ситуацію, я виправив свої посилання в / usr / lib64. Напрsudo ln -sf libssl.so.0.9.8e libssl.so.10


0

Щодо apt-файлу, то спочатку його потрібно встановити

sudo apt install apt-file

і оновити кеш

sudo apt-file update

Тоді пошук apt-файлів за деяким файлом повинен працювати.

Що стосується встановлення пакетів, я думаю, вам не потрібно буде libssl-dev, вам потрібно лише libssl1.0.0 - це бібліотека часу виконання. Другий - для розвитку

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.