Fehler: Befehl 'gcc' mit Exit-Status 1 während der Installation des Eventlets fehlgeschlagen

202

Ich wollte eventletauf meinem System installieren , um "Herd" für die Softwarebereitstellung zu haben. Das Terminal zeigt jedoch einen gcc-Fehler an:

  root@agrover-OptiPlex-780:~# easy_install -U eventlet
  Searching for eventlet
  Reading http://pypi.python.org/simple/eventlet/
  Reading http://wiki.secondlife.com/wiki/Eventlet
  Reading http://eventlet.net
   Best match: eventlet 0.9.16
    Processing eventlet-0.9.16-py2.7.egg
    eventlet 0.9.16 is already the active version in easy-install.pth

   Using /usr/local/lib/python2.7/dist-packages/eventlet-0.9.16-py2.7.egg
 Processing dependencies for eventlet
 Searching for greenlet>=0.3
Reading http://pypi.python.org/simple/greenlet/
Reading https://github.com/python-greenlet/greenlet
Reading http://bitbucket.org/ambroff/greenlet
Best match: greenlet 0.3.4
Downloading http://pypi.python.org/packages/source/g/greenlet/greenlet-   0.3.4.zip#md5=530a69acebbb0d66eb5abd83523d8272
Processing greenlet-0.3.4.zip
Writing /tmp/easy_install-_aeHYm/greenlet-0.3.4/setup.cfg
Running greenlet-0.3.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-_aeHYm/greenlet-0.3.4/egg-dist-tmp-t9_gbW
In file included from greenlet.c:5:0:
greenlet.h:8:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: Setup script exited with error: command 'gcc' failed with exit status 1`

Warum kann nicht Python.hgefunden werden?

Anubhav Grover
quelle

Antworten:

370

Ihre Installation schlägt fehl, weil Sie die Python-Entwicklungsheader nicht installiert haben. Sie können dies durch apt auf Ubuntu / Debian tun mit:

sudo apt-get install python-dev 

für python3 verwenden:

sudo apt-get install python3-dev

Für eventletSie auch die benötigen könnten libeventBibliotheken so installiert , wenn Sie erhalten einen Fehler zu sprechen , dass Sie libevent mit installieren:

sudo apt-get install libevent-dev
Trevor
quelle
2
FWIW, du brauchst definitiv sowohl Python-Dev als auch Libevent-Dev. Vielen Dank!
Alex Whittemore
56
Für Fedora können Sie verwenden:sudo yum install python-devel
Java Xu
8
Ich schlage sudo apt-get updatevor, diese beiden Befehle auszuführen. Ich bekam Fehler mit sudo apt-get install python-dev.
AliBZ
1
Ich habe den gleichen Fehler, aber Python-Devel installiert und das System wird mit yum -y Installationsupdates aktualisiert. Was könnte das Problem sonst noch sein?
Gcap
Bei Verwendung von Python 2.6:sudo apt-get install python2.6-dev
luismartingil
47

Für Fedora:

sudo yum install python-devel

sudo yum install libevent-devel

und schlussendlich:

sudo easy_install gevent
Snehal Parmar
quelle
sudo yum install python-devel sudo yum install libevent-devel hat für mich gearbeitet
Syed Abdul Qadeer
24

Was bei CentOS für mich funktioniert hat, war:

sudo yum -y install gcc
sudo yum install python-devel
nishant
quelle
2
löste auch mein Problem. unable to execute 'gcc': No such file or directory error: command 'gcc' failed with exit status 1
Jason Goal
Verwenden Sie sudo yum install python34-develfür Python 3.x, da die andere nur für Python 2.x ist
Hitesh Garg
18

Für Redhat-Versionen (Centos 7) Verwenden Sie den folgenden Befehl, um das Python-Entwicklungspaket zu installieren

Python 2.7

sudo yum installiere python-dev

Python 3.4

sudo yum install python34-devel

Wenn Ihr Problem dennoch nicht behoben ist, versuchen Sie, die folgenden Pakete zu installieren.

sudo yum installiere python-devel

sudo yum install openssl-devel

sudo yum install libffi-devel

Rahul Satal
quelle
1
No package python-dev available.Ich verstehe das.
Nishant
1
Hallo @NishantKumar, stellen Sie sicher, dass Sie an Centos arbeiten und es für python2.x installieren. Sie können auch versuchen, "sudo yum install python-devel"
Rahul Satal
1
@NishantKumar Sie erhalten diese Nachricht, weil unter CentOS das Python-Dev-Paket unter dem Namen Python-Devel steht. Verwenden Sie alsoyum install python-devel
MrRobot
15

Unter MacOS hatte ich Probleme bei der Installation fbprophet, für pystandie eine gccKompilierung erforderlich ist . Ich würde immer den gleichen Fehler erhalten: Befehl 'gcc' schlug mit Exit-Status 1 fehl

Ich glaube, ich habe das Problem für mich so behoben:

Ich habe brew install gccdie neueste Version installiert, die am Ende wargcc-8

Dann habe ich dafür gesorgt, dass es beim gccAusführen gcc-8stattdessen verwendet wird.

Es hat entweder funktioniert, weil ich alias gcc='gcc-8in meinem hinzugefügt habe .zshrc(wie .bashrcaber für zsh ), oder weil ich gelaufen bin export PATH=/usr/local/bin:$PATH(siehe Kommentar )

Außerdem : Alle meine Versuche fanden in einer virtuellen Umgebung statt und ich konnte nur fbprophetglobal (mit pip ) installieren , aber immer noch keinen Erfolg in einem venv

Boris Yakubchik
quelle
4

Versuche dies :

sudo apt-get install libblas-dev libatlas-base-dev

Ich hatte ein ähnliches Problem unter Ubuntu 14.04. Für mich die folgenden Ubuntu-Pakete

HISI
quelle
3

Für CentOS 7.2:

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.2.1511 (Core) 
Release:    7.2.1511
Codename:   Core

Eventlet installieren:

sudo yum install python-devel
sudo easy_install -ZU eventlet

Terminalinfo:

[root@localhost ~]# easy_install -ZU eventlet
Searching for eventlet
Reading http://pypi.python.org/simple/eventlet/
Best match: eventlet 0.19.0
Downloading https://pypi.python.org/packages/5a/e8/ac80f330a80c18113df0f4f872fb741974ad2179f8c2a5e3e45f40214cef/eventlet-0.19.0.tar.gz#md5=fde857181347d5b7b921541367a99204
Processing eventlet-0.19.0.tar.gz
Running eventlet-0.19.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-Hh9GQY/eventlet-0.19.0/egg-dist-tmp-rBFoAx
Adding eventlet 0.19.0 to easy-install.pth file

Installed /usr/lib/python2.6/site-packages/eventlet-0.19.0-py2.6.egg
Processing dependencies for eventlet
Finished processing dependencies for eventlet
Kleine Roys
quelle
Wenn ich starte, erhalte ich den Fehler "gcc 'kann nicht ausgeführt werden: Keine solche Datei oder kein solches Verzeichnis"
Sarang Manjrekar
2
@ Sarang das heißt, Sie haben gcc noch nicht installiert, führen Sie aus: "yum -y install gcc"
Little Roys
3

Verwenden Sie dies für openSUSE 42.1 Leap Linux

sudo zypper install python3-devel
Akson
quelle
Willkommen bei Stack Overflow. Beachten Sie, dass dies sowohl ein Kommentar als auch eine Antwort ist. Unter den Hauptantworten gibt es eine Reihe von Kommentaren, die Alternativen für verschiedene Linux-Distributionen beschreiben. Mir ist klar, dass Sie noch keine Kommentare abgeben können. Seien Sie vorsichtig, wenn Sie Antworten auf gut etablierte Fragen hinzufügen, die wirklich "Kommentare" sind.
Jonathan Leffler
3

Dies ist ein alter Beitrag, aber ich habe gerade das gleiche Problem bei der Installation von Regex durch AWS EC2. Das funktioniert perfekt für mich

sudo yum -y install gcc

und als nächstes

sudo yum -y install gcc-c++
PiotrK
quelle
1

Unter MacOS hatte ich auch Probleme beim Installieren, fbprophetwas gcceine seiner Abhängigkeiten war.

Nachdem ich einige Schritte ausprobiert hatte, wie von @ Boris empfohlen, funktionierte der folgende Befehl von der Facebook Prophet-Projektseite am Ende für mich.

conda install -c conda-forge fbprophet

Es wurden alle erforderlichen Abhängigkeiten für installiert fbprophet. Stellen Sie sicher, dass Sie Anaconda installiert haben.

Gidi9
quelle
Danke dir! Diese gcc verursacht mir so viele Installationsprobleme, dass ich sie immer noch nicht gelöst habe und Boris Schritte auch für mich nicht funktionieren würden, aber das hat den Trick getan. Danke dir!
Shad
0

Aus dem Quellcode erstellen und installieren, dies ist in der neuesten Version (10.3+) behoben:

mkdir -p /tmp/install/netifaces/
cd /tmp/install/netifaces && wget -O "netifaces-0.10.4.tar.gz" "https://pypi.python.org/packages/source/n/netifaces/netifaces-0.10.4.tar.gz#md5=36da76e2cfadd24cc7510c2c0012eb1e"
tar xvzf netifaces-0.10.4.tar.gz
cd netifaces-0.10.4 && python setup.py install
Rob Frey
quelle
0

Wenn es immer noch nicht funktioniert, können Sie dies versuchen

sudo apt-get install build-essential

In meinem Fall hat es das Problem gelöst.

Shivam Agrawal
quelle
0

Ebenso habe ich es so behoben (Hinweis python34):

sudo yum install python34-devel
Hossein Narimani Rad
quelle
0

Ich benutze MacOS Catalina 10.15.4 . Keine der veröffentlichten Lösungen hat bei mir funktioniert. Was für mich funktioniert hat ist:

 >> xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

>> env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip install psycopg2==2.8.4
Collecting psycopg2==2.8.4
  Using cached psycopg2-2.8.4.tar.gz (377 kB)
Installing collected packages: psycopg2
  Attempting uninstall: psycopg2
    Found existing installation: psycopg2 2.7.7
    Uninstalling psycopg2-2.7.7:
      Successfully uninstalled psycopg2-2.7.7
    Running setup.py install for psycopg2 ... done
Successfully installed psycopg2-2.8.4

benutze pip3 für python3

Nofi
quelle