8 votes

Aucun paquet 'libffi' n'a été trouvé dans l'environnement virtuel Homebrew.

J'utilise une installation homebrew de Python et j'obtiens une erreur en utilisant pip à l'intérieur d'un fichier enveloppe virtuelle (virtualenvwrapper) l'environnement :

No package 'libffi' found
Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable

Homebrew a une formule pour libffi ( brew install libffi ), ce qui semble être une réussite.

Je peux courir

$ python-config --include

ce qui donne

-I/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/include/python2.7

Dois-je donc "ajouter le répertoire contenant `libffi.pc'" ?

echo $PKG_CONFIG_PATH produit une chaîne vide.

[Quelqu'un sur SO avait recommandé][3] :

Use -I /opt/local/include on the command line 

ou

C_INCLUDE_PATH=/opt/local/include in the environment.

Pourrais-je ajouter la ligne :

C_INCLUDE_PATH=/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/include/python2.7

à la ~/.bash_profile ?

ou éventuellement export PKG_CONFIG_PATH=/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/include/python2.7

13voto

MikeiLL Points 455

J'ai compris.

brew install libffi

locate libffi.pc

(dans ce cas, j'ai également dû exécuter la commande pour construire la base de données locate, pour laquelle le code était inclus dans l'invite de locate)

retourné /usr/local/Cellar/libffi/3.0.13/lib/pkgconfig/libffi.pc

Dans ce cas dans l'environnement virtuel couru export PKG_CONFIG_PATH=/usr/local/Cellar/libffi/3.0.13/lib/pkgconfig/ (le chemin vers libffi.pc ).

Confirmé par echo $PKG_CONFIG_PATH qui indique le chemin.

Et pip "Successfully installed" les modules !

Au cas où cela serait utile, voici comment j'ai fait fonctionner l'environnement virtualenvwrapper :

J'ai ajouté le contenu suivant au fichier ~/.bash_profile ainsi que ~/.bashrc des dossiers :

export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
export PATH=/usr/local/bin:$PATH

Conformément à la ce tutoriel .

4voto

Eric C. Points 41

À titre d'information, j'ai dû utiliser la fonction export PKG_CONFIG_PATH=/usr/local/Cellar/libffi/3.0.13/lib/pkgconfig/ pour que cela fonctionne. Même commande, mais juste le répertoire au lieu du fichier libffi.pc lui-même.

1voto

user324891 Points 11

Dans mon cas, j'ai obtenu le message d'erreur suivant en lançant npm i :

node-gyp rebuild

Package libffi was not found in the pkg-config search path.
Perhaps you should add the directory containing `libffi.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libffi', required by 'gobject-2.0', not found
gyp: Call to 'pkg-config --cflags  cairo poppler-qt5' returned exit status 1 while in binding.gyp. while trying to load binding.gyp
I figured out the problem was on exporting the PATH

J'ai donc lancé brew reinstall -s poppler

A la fin de l'installation, vous pouvez lancer l'exportation des chemins d'accès.

If you need to have qt first in your PATH run:
  echo 'export PATH="/usr/local/opt/qt/bin:$PATH"' >> ~/.zshrc

For compilers to find qt you may need to set:
  export LDFLAGS="-L/usr/local/opt/qt/lib"
  export CPPFLAGS="-I/usr/local/opt/qt/include"

For pkg-config to find qt you may need to set:
  export PKG_CONFIG_PATH="/usr/local/opt/qt/lib/pkgconfig"

Cela m'a permis d'y remédier.

J'espère qu'il vous sera utile.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X