Ich versuche Pycurl über Folgendes zu installieren:
sudo pip install pycurl
Es wurde gut heruntergeladen, aber wenn es setup.py ausführt, erhalte ich den folgenden Traceback:
Downloading/unpacking pycurl
Running setup.py egg_info for package pycurl
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build-root/pycurl/setup.py", line 563, in <module>
ext = get_extension()
File "/tmp/pip-build-root/pycurl/setup.py", line 368, in get_extension
ext_config = ExtensionConfiguration()
File "/tmp/pip-build-root/pycurl/setup.py", line 65, in __init__
self.configure()
File "/tmp/pip-build-root/pycurl/setup.py", line 100, in configure_unix
raise ConfigurationError(msg)
__main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build-root/pycurl/setup.py", line 563, in <module>
ext = get_extension()
File "/tmp/pip-build-root/pycurl/setup.py", line 368, in get_extension
ext_config = ExtensionConfiguration()
File "/tmp/pip-build-root/pycurl/setup.py", line 65, in __init__
self.configure()
File "/tmp/pip-build-root/pycurl/setup.py", line 100, in configure_unix
raise ConfigurationError(msg)
__main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory
Jede Idee, warum dies geschieht und wie man es umgeht
Antworten:
Unter Debian brauchte ich die folgenden Pakete, um dies zu beheben
quelle
libssl-dev
Paket zusätzlich zu deinem. Seltsam, wiepip
entkoppelt man sich von der Systempaketverwaltung, gibt aber nicht einmal Hinweise darauf, um welches Paket es sich handeln könnte. Ich vermisse es in einer sehr verbreiteten Linux-Distribution.Ähnliches gilt für den
yum
PaketmanagerWenn Sie verwenden
dnf
, verwenden Siequelle
In meinem Fall wurde das Problem dadurch behoben:
wie hier erklärt
quelle
In Alpine Linux sollten Sie Folgendes tun:
quelle
apk add curl-dev
war genug für mich im Docker-python2.7-alpine
Bild, danke!Ich habe das gleiche Problem festgestellt, als ich versucht habe, Shinken 2.0.3 unter Ubuntu zum Starten zu bringen. Schließlich habe ich eine vollständige Deinstallation durchgeführt und dann Shinken mit neu installiert
pip -v
. Als es aufgeräumt wurde, erwähnte es:Installierte das mit
apt-get
und alle Broker feuerten wie erwartet :-)quelle
Das hat mein Problem unter Ubuntu 14.04 gelöst:
quelle
Auf OpenSUSE:
quelle
In meinem Fall bekam ich immer die gleiche Fehlermeldung. Ich benutze Fedora. Ich habe es gelöst, indem ich:
Dies installierte alles, was ich brauchte, damit es funktionierte.
quelle
Ich hatte dieses Problem auf dem Mac und es hing damit zusammen, dass das
openssl
Paket eine ältere Version dessen war, was es benötigtepycurl
.pycurl
kann nach meinem Verständnis andere SSL-Bibliotheken anstelle von OpenSSL verwenden. Überprüfen Sie, welche SSL-Bibliothek Sie verwenden, und aktualisieren Sie sie, da dies das Problem sehr wahrscheinlich beheben wird.Ich habe das behoben durch:
brew upgrade
pycurl-x.y.z.tar.gz
von http://pycurl.io/ heruntergeladenpython setup.py --with-openssl install
als openssl ist die Bibliothek, die ich installiert habe. Wenn Sie SSL-Bibliothek ist, muss entwedergnutls
odernss
dann--with-gnutls
oder--with-nss
entsprechend verwendet werden. Weitere Installationsinformationen finden Sie im Github-Repository .quelle
Neben der Antwort von eldos brauchte ich auch
gcc
in CentOS 7:quelle
Beachten Sie, dass bei Verwendung von nodejs (zum Zeitpunkt des Schreibens) eine Abhängigkeit von libssl 1.0 besteht. * - Wenn Sie also eine alternative SSL-Bibliothek installieren, wird die Installation von nodejs unterbrochen.
Eine alternative Lösung zur Installation einer anderen SSL-Bibliothek ist die in dieser Antwort hier angegebene: https://stackoverflow.com/a/59927568/13564342, um stattdessen libcurl4-gnutls-dev zu installieren
quelle