3
votes

openssl: erreur lors du chargement des bibliothèques partagées: libssl.so.3

peu importe ce que je tape en combinaison avec «openssl», j'obtiens toujours le message d'erreur suivant:

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

Je ne sais pas comment résoudre ce problème après avoir lu de nombreuses questions demandé dans ce forum et dans d'autres forums.


2 commentaires

Ressemble à votre problème serverfault.com/questions/818445/...


Oui, j'ai déjà vu cela. Mais néanmoins le regarder deux fois m'a aidé et j'ai résolu mon problème. Merci.


4 Réponses :


3
votes

J'ai eu le même problème après l'installation d'Openssl 3.0. J'ai résolu le problème en copiant les fichiers libcrypto.so.3 , libcrypto.a et libssl.so.3 depuis / usr / local / lib à / usr / lib . Après avoir copié ces fichiers, vous devez créer des liens symboliques.

ln -s libcrypto.so.3 libcrypto.so
ln -s libssl.so.3 libssl.so

Reconstruisez maintenant le cache ldconfig:

sudo ldconfig


3 commentaires

Ceci est un conseil dangereux et ne doit pas être suivi. Les fichiers dans / usr / lib doivent être gérés par le gestionnaire de paquets de votre système d'exploitation - les écraser laissera votre système dans un état incohérent.


C'est un sale hack, mais cela a fonctionné sur mon Ubuntu 16. J'ai compilé et installé l'openssl et curl actuels (qui utilise openssl). Je pense que lors de la construction d'Openssl, il existe une option que vous pouvez passer à configurer pour le chemin d'installation, à usr / lib dans ce cas.


J'ai eu une erreur similaire en installant openssl à partir de stratch: openssl: erreur lors du chargement des bibliothèques partagées: libssl.so.48: impossible d'ouvrir le fichier objet partagé: aucun fichier ou répertoire de ce type. Cette astuce a fonctionné pour moi.



1
votes

Compilez et exécutez votre code en utilisant sudo . Cela fonctionnera.

Si cela ne fonctionne pas, suivez les étapes ci-dessous

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


0 commentaires

4
votes

Je l'ai résolu cette fois-là uniquement en créant un lien symbolique et en reconstruisant le cache ldconfig.

ln -s libssl.so.3 libssl.so
sudo ldconfig


0 commentaires

1
votes

Dans mon cas, c'était lié à l'installation de Python 3.8 sur SLES 12.1. L'installation de Pip a échoué en raison d'une erreur OpenSSL.

Ensuite, j'ai cloné le dépôt openssl et l'ai construit à partir des sources.

git clone https://github.com/openssl/openssl.git

./Configure faire faire l'installation

Enfin, ldconfig est important et nécessaire.

Ensuite, openssl version -a devrait afficher une réponse sans erreur. Au moins openssl 1.1 est nécessaire pour construire Python 3.5+.

Après cet exercice, la construction de Python 3.8.5 à partir des sources a réussi.


0 commentaires