web-dev-qa-db-fra.com

Erreur lors du chargement des bibliothèques partagées: 'libpcre.so.0: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ni répertoire de ce type'

Je viens d'installer Passenger 3.0.11 et nginx et j'ai cette erreur:

Lancement de nginx:/opt/nginx/sbin/nginx: erreur lors du chargement des bibliothèques partagées: libpcre.so.0: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ni répertoire

23
user908798

Le message signifie ce qu'il dit. L’exécutable nginx a été compilé pour s’attendre à ce que la bibliothèque partagée PCRE (expression régulière compatible Perl) soit disponible quelque part sur LD_LIBRARY_PATH ou spécifiée dans /etc/ld.so.conf ou tout autre mécanisme de localisation de bibliothèque équivalent s’appliquant à votre système d’exploitation, mais il ne peut pas trouver la bibliothèque.

Vous devrez installer PCRE - ou configurer votre environnement de sorte que nginx recherche la bibliothèque PCRE où il est installé.

5
Jonathan Leffler

J'ai eu la même erreur et j'ai résolu le problème en exécutant Sudo ldconfig.

67
Simon Ji

Exécutez la commande ci-dessous et redémarrez le serveur.

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
5
Shiv Kumar Sah

Il y a peu de recommandations, avec ceci j'ai résolu le problème que j'avais.

  • Comme mentionné ci-dessus, ajoutez le chemin de la bibliothèque dans le fichier /etc/ld.so.conf et vérifiez qu'il est mis à jour ou non en utilisant ldconfig -v
  • Ajoutez LD_LIBRARY_PATH dans le .bash_profile et actualisez-le avec . . bash profile.
  • Si le fichier lib n'est pas mis à jour, utilisez la variable updatedb pour actualiser la liste des bibliothèques.
0
Midhunlal