erreur: la commande 'gcc' a échoué avec l'état de sortie 1 lors de l'installation de l'eventlet

202

Je voulais installer eventletsur mon système afin d'avoir "Herd" pour le déploiement de logiciel .. mais le terminal affiche une erreur gcc:

  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`

Pourquoi ne peut-on pas Python.hêtre trouvé?

Anubhav Grover
la source

Réponses:

370

Votre installation échoue car vous n'avez pas installé les en-têtes de développement python. Vous pouvez le faire via apt sur ubuntu / debian avec:

sudo apt-get install python-dev 

pour l'utilisation de python3:

sudo apt-get install python3-dev

Car eventletvous pourriez également avoir besoin que les libeventbibliothèques soient installées, donc si vous obtenez une erreur à ce sujet, vous pouvez installer libevent avec:

sudo apt-get install libevent-dev
Trevor
la source
2
FWIW, vous avez absolument besoin de python-dev et libevent-dev. Merci!
Alex Whittemore
56
Pour fedora, vous pouvez utiliser:sudo yum install python-devel
Java Xu
8
Je suggère de courir sudo apt-get updateavant d'exécuter ces 2 commandes. J'obtenais une erreur avec sudo apt-get install python-dev.
AliBZ
1
J'ai la même erreur, mais j'ai installé python-devel et le système est mis à jour avec les mises à jour d'installation yum -y. Quel pourrait être le problème?
Gcap
Si vous utilisez Python 2.6:sudo apt-get install python2.6-dev
luismartingil
47

Pour Fedora:

sudo yum install python-devel

sudo yum install libevent-devel

et enfin:

sudo easy_install gevent
Snehal Parmar
la source
sudo yum install python-devel sudo yum install libevent-devel a fonctionné pour moi
Syed Abdul Qadeer
25

Ce qui a fonctionné pour moi sur CentOS était:

sudo yum -y install gcc
sudo yum install python-devel
nishant
la source
2
résolu mon problème aussi. unable to execute 'gcc': No such file or directory error: command 'gcc' failed with exit status 1
Jason Goal
utiliser sudo yum install python34-develpour python 3.x car l'autre est uniquement pour python 2.x
Hitesh Garg
18

Pour les versions de Redhat (Centos 7) Utilisez la commande ci-dessous pour installer le package de développement Python

Python 2.7

sudo yum install python-dev

Python 3.4

sudo yum install python34-devel

Néanmoins, si votre problème n'est pas résolu, essayez d'installer les packages ci-dessous -

sudo yum install python-devel

sudo yum install openssl-devel

sudo yum install libffi-devel

Rahul Satal
la source
1
No package python-dev available.Je comprends ça.
nishant le
1
Salut @NishantKumar assurez-vous que vous travaillez sur centos et que vous l'installez pour python2.x. Vous pouvez également essayer "sudo yum install python-devel"
Rahul Satal
1
@NishantKumar vous obtenez ce message parce que sur centOS le paquet python-dev est sous le nom python-devel, alors utilisezyum install python-devel
MrRobot
15

Sur MacOS, j'ai eu du mal à installer fbprophetce qui nécessite pystance qui nécessite gccde compiler. J'obtiendrais toujours la même erreur: la commande 'gcc' a échoué avec l'état de sortie 1

Je pense que je me suis fixé le problème ainsi:

J'avais l'habitude brew install gccd'installer la dernière version, qui a fini par êtregcc-8

Ensuite, je me suis assuré que lors de l' gccexécution, il serait utilisé à la gcc-8place.

Cela a fonctionné soit parce que j'ai ajouté alias gcc='gcc-8dans mon .zshrc(comme .bashrcmais pour zsh ), soit parce que j'ai couru export PATH=/usr/local/bin:$PATH(voir commentaire )

Aussi : toutes mes tentatives étaient dans un environnement virtuel et je n'ai réussi qu'en installant fbprophetglobalement (avec pip ), mais toujours pas de succès à l'intérieur d'un venv

Boris Yakubchik
la source
4

essaye ça :

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

J'ai eu un problème similaire sur Ubuntu 14.04. Pour moi, les packages Ubuntu suivants

HISI
la source
3

Pour 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

Installer l'événement:

sudo yum install python-devel
sudo easy_install -ZU eventlet

Informations sur le terminal:

[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
Little Roys
la source
Lorsque je cours, cela me donne l'erreur "impossible d'exécuter 'gcc': Aucun fichier ou répertoire de ce type"
Sarang Manjrekar
2
@Sarang cela signifie que vous n'avez pas encore installé gcc, exécutez: "yum -y install gcc"
Little Roys
3

Pour openSUSE 42.1 Leap Linux, utilisez ceci

sudo zypper install python3-devel
Akson
la source
Bienvenue dans Stack Overflow. Notez que c'est autant un commentaire qu'une réponse. Il y a un certain nombre de commentaires sous les réponses principales qui décrivent des alternatives pour différentes distributions Linux. Je me rends compte que vous ne pouvez pas encore faire de commentaires. Soyez prudent lorsque vous ajoutez des «réponses» à des questions bien établies qui sont vraiment des «commentaires».
Jonathan Leffler
3

Ceci est un ancien article, mais je viens de rencontrer le même problème sur AWS EC2 en installant regex. Cela fonctionne parfaitement pour moi

sudo yum -y install gcc

et ensuite

sudo yum -y install gcc-c++
PiotrK
la source
1

Sur MacOS, j'ai également eu des problèmes pour essayer d'installer fbprophetcegcc comme l'une de ses dépendances.

Après avoir essayé plusieurs étapes recommandées par @ Boris, la commande ci-dessous à partir de la page du projet Facebook Prophet a finalement fonctionné pour moi.

conda install -c conda-forge fbprophet

Il a installé toutes les dépendances nécessaires pour fbprophet. Assurez-vous que anaconda est installé.

Gidi9
la source
Je vous remercie! Ce gcc me cause tellement de problèmes d'installation que je n'ai toujours pas résolu et les étapes Boris ne fonctionneraient pas pour moi non plus, mais cela a fait l'affaire. Je vous remercie!
alose
0

Construisez à partir des sources et installez, cela est corrigé dans la dernière version (10.3+):

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
la source
0

Si cela ne fonctionne toujours pas, vous pouvez essayer ceci

sudo apt-get install build-essential

dans mon cas, cela a résolu le problème.

Shivam Agrawal
la source
0

De même, je l'ai fixé comme ceci (avis python34):

sudo yum install python34-devel
Hossein Narimani Rad
la source
0

J'utilise MacOS catalina 10.15.4 . Aucune des solutions publiées n'a fonctionné pour moi. Ce qui a fonctionné pour moi, c'est:

 >> 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

utiliser pip3 pour python3

Nofi
la source
0

Cette page va vous sauver la vie, pour tous les autres problèmes de lib à venir,

Pour Alpine (> = 3,6),

utilisation apk --update --upgrade add gcc musl-dev jpeg-dev zlib-dev libffi-dev cairo-dev pango-dev gdk-pixbuf-dev

Aakash Verma
la source