GNU/Linux >> Tutoriels Linux >  >> Linux

/usr/bin/ld :impossible de trouver -lpython2.7

Il ne trouve pas la bibliothèque Python, pas l'exécutable. Exécutez locate libpython2.7.a pour voir où se trouve votre bibliothèque Python et ajoutez-la au chemin de la bibliothèque (par exemple, si elle se trouve dans /opt/python2.7/lib , vous voulez appeler le LDFLAGS="-L/opt/python2.7/lib" make ).

Le @ symbole signifie que le fichier est un lien symbolique ; * signifie qu'il est exécutable (ceux-ci sont produits par ls -F , que vous pourriez avoir comme alias).


La solution ci-dessus ne l'a pas tout à fait fait pour moi car j'utilisais pip pour installer mysql-python, mais c'était définitivement un gros coup de pouce dans la bonne direction. Pour le bénéfice de tous ceux qui atterrissent ici depuis Google dans la même situation que moi, ma solution était de créer un lien symbolique libpython2.7.a du répertoire d'installation de python au répertoire lib :

ln -s /opt/python2.7.1/lib/python2.7/config/libpython2.7.a

/usr/local/lib/

pip install mysql-python a fonctionné sans aucun problème par la suite.


Linux
  1. Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?

  2. Pourquoi /bin/sh pointe-t-il vers /bin/dash et non /bin/bash ? ?

  3. Supprimé accidentellement /usr/bin/python3.5, impossible de réinstaller ?

  4. Installer les binaires dans /bin, /sbin, /usr/bin et /usr/sbin, interactions avec --prefix et DESTDIR

  5. gcc - /usr/bin/ld erreur :impossible de trouver <library> dans /usr/local/lib bien que ldconfig le liste et le chemin ajouté à ld.so.conf

cmake --version pointe vers /usr/bin/cmake tandis que cmake pointe vers /usr/local/bin

Quelle est la signification de /usr/sbin, /usr/local/sbin et /usr/local/bin ?

Déplacement du contenu de /bin vers /usr/bin, possible d'annuler ?

Les sites Web doivent-ils vivre dans /var/ ou /usr/ selon l'utilisation recommandée ?

Qu'est-ce que /usr/bin/[ ?

#!/bin/sh vs #!/bin/bash pour une portabilité maximale