libssl.so.10: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ou répertoire de ce type

44

J'essaie d'utiliser twoBitToFa, un petit programme publié par l'Université de Californie à Santa Cruz, qui décompresse les gros fichiers du génome et j'obtiens cette erreur:

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

J'ai essayé de chercher quel paquet le fournit. Je suis passé de Fedora qui l’avait eu, yum providesmais en cherchant l’équivalent Ubuntu, je suis tombé sur, apt-file searchmais lorsque j’ai essayé, j’ai reçu une erreur non trouvée.

Comment puis-je obtenir ce fichier libssl, et plus généralement, comment puis-je rechercher le paquet qui fournit un fichier afin que je puisse le faire moi-même à l'avenir?

von Mises
la source
Vous devez installer apt-fileavec sudo apt-get install apt-fileet ensuite vous devez exécuter sudo apt-get updateet sudo apt-get install apt-fileet sudo apt-file update.
Mchid

Réponses:

52

Vérifions que votre SSL est installé et mis à jour:

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

Maintenant, corrigeons la dénomination du fichier en créant un lien:

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

Et enfin, informons le développeur de cette faille afin qu’il puisse la réparer :)

Hugo Vieira
la source
3
Dans mon cas (bedToBigBed de UCSC), je devais également exécuter une commande similaire pour "libcrypto" en plus de la réponse ci-dessus: sudo ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 / usr / lib / libcrypto.so.10
utilisateur2821352
2
Dans mon cas j'avais besoin reinstalldes paquets. sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Edward Wilde
Merci @ EdwardWilde, reinstallsemble le plus facile! sudo apt-get install libssl1.0.0 libssl-dev --reinstall
Stéphane Bruckert
Après les commandes apt-get, je ne vois toujours aucun fichier libssl * dans / lib / x86_64-linux-gnu. (Ubuntu 18)
MiloDC
2
le 18.04, la bibliothèque a été installée sur / usr / lib / x86_64-linux-gnu
Sa'ad
10

Semble que mongo attend des fichiers libssl dans /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
Dziamid
la source
# 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
Est-ce que ces 2 sont les mêmes? Ils semblent être de versions différentes.
Yixing Liu
8

Je suis l'un des développeurs de ces outils. Nos binaires ne supportent pas (encore) officiellement Ubuntu. Le moyen officiel de résoudre ce problème est de recompiler à partir du source, ce qui est devenu extrêmement simple (voir https://github.com/NullModel/kentUtils ). Nous essayons actuellement de construire des binaires statiques sans la dépendance libssl.

Max
la source
Y a-t-il un nouveau lien? Le lien ci-dessus indique qu'il est maintenant obsolète.
Ryuu
6

Dans mon cas, j’utilisais bêtement une application compilée pour Red Hat Enterprise Linux sur ma machine Ubuntu. Le simple fait d’utiliser la version Ubuntu a résolu le problème.

Ceci est similaire au manque de support pour Ubuntu décrit par Max.

John McGehee
la source
Pareil ici. Pas tout à fait sûr que ce soit la raison principale, mais ce pourrait être juste. Fyi - le logiciel était RoyalRender.
bossi
Oui, dans mon cas, j'ai téléchargé Mongo tar.gzpour Ubuntu (un autre Linux). Lorsque vous téléchargez Mongo, consultez la liste déroulante du site Mongo et choisissez Ubuntu.
Maxim Yefremov
1
idem ici ... Nouveau sur Ubuntu ... cette réponse m'a sauvé après environ 45 minutes de recherches sur Google et d'essais
techknowcrat
Pareil ici. 1Comment les autres ont-ils réussi à le faire fonctionner? Peut-être ont-ils manqué la référence "Ubuntu" dans le PO? 2Pourquoi une distribution est-elle importante? N'est-il pas compilé contre la même architecture?
Ryuu
0

Mes liens symboliques ont en quelque sorte été corrompus lors de l'installation d'une version plus récente d'OpenSSL. Pour remédier à cette situation, j'ai corrigé mes liens symboliques dans / usr / lib64. Par exemplesudo ln -sf libssl.so.0.9.8e libssl.so.10

Michael Fayad
la source
0

Concernant apt-file, vous devez d'abord l'installer

sudo apt install apt-file

et mettre à jour son cache

sudo apt-file update

Ensuite, apt-file search un fichier devrait fonctionner.

En ce qui concerne les installations de paquets, je pense que vous ne devriez pas avoir besoin de libssl-dev, vous avez seulement besoin de libssl1.0.0 - c'est la bibliothèque d'exécution. Le second est pour le développement

Michel Samia
la source