błąd: polecenie „gcc” nie powiodło się ze statusem wyjścia 1 podczas instalowania zdarzenia

202

Chciałem zainstalować eventletw swoim systemie, aby mieć „Herd” do wdrażania oprogramowania .. ale terminal wyświetla błąd 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`

Dlaczego nie Python.hmożna znaleźć?

Anubhav Grover
źródło

Odpowiedzi:

370

Instalacja kończy się niepowodzeniem, ponieważ nie masz zainstalowanych nagłówków programistycznych Python. Możesz to zrobić poprzez apt na Ubuntu / Debian z:

sudo apt-get install python-dev 

dla python3 użyj:

sudo apt-get install python3-dev

Dla eventletzobacz także potrzebują libeventbiblioteki zainstalowane, więc jeśli pojawi się błąd o tym mówić można zainstalować biblioteki libevent z:

sudo apt-get install libevent-dev
Trevor
źródło
2
FWIW, zdecydowanie potrzebujesz zarówno python-dev, jak i libevent-dev. Dzięki!
Alex Whittemore
56
W przypadku fedory możesz użyć:sudo yum install python-devel
Java Xu
8
Sugeruję uruchomienie sudo apt-get updateprzed uruchomieniem tych 2 poleceń. Wystąpił błąd sudo apt-get install python-dev.
AliBZ
1
Mam ten sam błąd, ale mam zainstalowany program Python-devel i system jest aktualizowany mniam -y instaluj aktualizacje .. co jeszcze może być problem?
Gcap
Jeśli używasz Python 2.6:sudo apt-get install python2.6-dev
luismartingil
47

W przypadku Fedory:

sudo yum install python-devel

sudo yum install libevent-devel

i w końcu:

sudo easy_install gevent
Snehal Parmar
źródło
sudo mniam zainstalować python-devel sudo mniam zainstalować libevent-devel pracował dla mnie
Syed Abdul Qadeer
25

W CentOS zadziałało dla mnie :

sudo yum -y install gcc
sudo yum install python-devel
nishant
źródło
2
rozwiązałem również mój problem. unable to execute 'gcc': No such file or directory error: command 'gcc' failed with exit status 1
Jason Gol
użyj sudo yum install python34-develdla Pythona 3.x, podobnie jak dla Pythona 2.x
Hitesh Garg
18

Wersje Redhat (Centos 7) Użyj poniższej komendy, aby zainstalować Python Development Package

Python 2.7

sudo mniam zainstaluj python-dev

Python 3.4

sudo mniam zainstalować python34-devel

Jeśli jednak problem nie został rozwiązany, spróbuj zainstalować poniższe pakiety -

sudo mniam zainstaluj python-devel

sudo yum install openssl-devel

sudo yum zainstaluj libffi-devel

Rahul Satal
źródło
1
No package python-dev available.Rozumiem
nishant
1
Cześć @NishantKumar, upewnij się, że pracujesz na centos i instalujesz go dla python2.x. Możesz także spróbować „sudo yum install python-devel”
Rahul Satal
1
@NishantKumar dostajesz tę wiadomość, ponieważ na centOS pakiet python-dev jest pod nazwą python-devel, więc użyjyum install python-devel
MrRobot
15

Na MacOS miałem problemy z instalacją fbprophet, która wymaga pystanco wymaga gcckompilacji. Ciągle otrzymywałbym ten sam błąd: polecenie „gcc” nie powiodło się ze statusem wyjścia 1

Myślę, że naprawiłem problem w ten sposób:

Kiedyś brew install gccinstalowałem najnowszą wersję, która ostatecznie byłagcc-8

Potem upewniłem się, że po gccuruchomieniu użyje gcc-8zamiast tego.

To działało albo dlatego, że dodałem ( alias gcc='gcc-8moje .zshrcjak .bashrcdla Zsh ), albo ponieważ uruchomiłem export PATH=/usr/local/bin:$PATH(patrz komentarz )

Ponadto : wszystkie moje próby odbywały się w środowisku wirtualnym i udało mi się tylko zainstalować fbprophetglobalnie (z pipem ), ale nadal nie powiodło się w venv

Boris Yakubchik
źródło
4

Spróbuj tego :

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

Miałem podobny problem z Ubuntu 14.04. Dla mnie następujące pakiety Ubuntu

HISI
źródło
3

Dla 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

Zainstaluj eventlet:

sudo yum install python-devel
sudo easy_install -ZU eventlet

Informacje o terminalu :

[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
źródło
Kiedy uruchamiam, pojawia się błąd „nie można uruchomić„ gcc ”: brak takiego pliku lub katalogu”
Sarang Manjrekar
2
@ Sarang, co oznacza, że ​​jeszcze nie zainstalowałeś gcc, wykonaj: „mniam -y zainstaluj gcc”
Little Roys
3

W przypadku openSUSE 42.1 Leap Linux użyj tego

sudo zypper install python3-devel
Akson
źródło
Witamy w Stack Overflow. Pamiętaj, że jest to tak samo komentarz jak odpowiedź. Pod głównymi odpowiedziami znajduje się szereg komentarzy opisujących alternatywy dla różnych dystrybucji Linuksa. Zdaję sobie sprawę, że nie możesz jeszcze komentować. Zachowaj ostrożność, dodając „odpowiedzi” do dobrze ugruntowanych pytań, które tak naprawdę są „komentarzami”.
Jonathan Leffler
3

To jest stary post, ale właśnie napotkałem ten sam problem na AWS EC2 instalując regex. To działa idealnie dla mnie

sudo yum -y install gcc

i dalej

sudo yum -y install gcc-c++
PiotrK
źródło
1

Na MacOS miałem również problemy z próbą instalacji, fbprophetktóra miałagcc jedną z jego zależności.

Po wypróbowaniu kilku kroków zalecanych przez @ Borisa poniższe polecenie ze strony projektu Facebook Prophet zadziałało w końcu na mnie.

conda install -c conda-forge fbprophet

Zainstalował wszystkie niezbędne zależności fbprophet. Upewnij się, że masz zainstalowaną anakondę.

Gidi9
źródło
Dziękuję Ci! Ten gcc powoduje mi tak wiele problemów z instalacją, że wciąż nie zostały rozwiązane, a kroki Borisa też by mi nie działały, ale to załatwiło sprawę. Dziękuję Ci!
shad
0

Kompiluj ze źródła i instaluj, jest to naprawione w najnowszej wersji (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
źródło
0

Jeśli nadal nie działa, możesz spróbować

sudo apt-get install build-essential

w moim przypadku rozwiązało to problem.

Shivam Agrawal
źródło
0

Podobnie naprawiłem to w ten sposób (uwaga python34):

sudo yum install python34-devel
Hossein Narimani Rad
źródło
0

Używam MacOS Catalina 10.15.4 . Żadne z opublikowanych rozwiązań nie działało dla mnie. Dla mnie zadziałało:

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

użyj pip3 dla Python3

Nofi
źródło
0

Ta strona uratuje ci życie dla wszystkich przyszłych problemów związanych z lib,

W przypadku Alpine (> = 3,6)

posługiwać się apk --update --upgrade add gcc musl-dev jpeg-dev zlib-dev libffi-dev cairo-dev pango-dev gdk-pixbuf-dev

Aakash Verma
źródło