Ich habe libffi
auf meinem Linux-Server installiert und die PKG_CONFIG_PATH
Umgebungsvariable korrekt auf das richtige Verzeichnis eingestellt, da pip
erkannt wird, dass sie installiert ist. Beim Versuch, pyOpenSSL zu installieren, gibt pip jedoch an, dass die Datei 'ffi.h' nicht gefunden werden kann. Ich kenne sowohl das ffi.h
vorhandene als auch das Verzeichnis. Wie kann ich diese Lücke zwischen ffi.h
und schließen pip
?
76
Antworten:
Sie können
CFLAGS
(undLDFLAGS
oder verschiedene andere Compiler- und Linker-Optionen) vor dempip
Befehl verwenden (dito fürsetup.py
):Ähnliches sollte funktionieren:
quelle
libffi-dev
.Sie müssen auch das Entwicklungspaket installieren.
libffi-dev
auf Debian / Ubuntu,libffi-devel
auf Redhat / Centos / Fedora.quelle
apk add libffi-dev
arbeitete für mich an Alpine 3.11.6. DankeUm die Antwort von mhawke zu ergänzen, sind die Debian / Ubuntu-basierten Systeme für RPM-basierte Systeme normalerweise "-dev" und nicht "-devel"
Für Ubuntu wird es also so sein
apt-get install libffi libffi-dev
RHEL, CentOS, Fedora (bis v22)
yum install libffi libffi-devel
Fedora 23+
dnf install libffi libffi-devel
OSX / MacOS (vorausgesetzt, Homebrew ist installiert)
brew install libffi
quelle
libffi-dev
(ohne die 6). Dies ist relevant für 11/2019 mit Ubuntu 18.04.Ubuntu / Mint
quelle
pip
Pakete werden normalerweise nicht verwendetpkg-config
. Daher sollten Sie einstellenCFLAGS
undLDFLAGS
manuell:quelle
Auf Debian,
quelle
auf CentOS:
quelle
Sie müssen das Entwicklungspaket für installieren
libffi
.Auf RPM-basierten Systemen (Fedora, Redhat, CentOS usw.) wird das Paket benannt
libffi-devel
.Ich bin mir nicht sicher, was Debian / Ubuntu-Systeme angeht. Ich bin mir sicher, dass sich jemand anderes damit auseinandersetzen wird.
quelle