Setup-Skript mit Fehler beendet: Befehl 'x86_64-linux-gnu-gcc' mit Exit-Status 1 fehlgeschlagen


333

Bei der Installation odoo-serverwurde der folgende Fehler angezeigt:

error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Könnte mir jemand helfen, dieses Problem zu lösen?


3
Manchmal ist es die Zeile über diesem Fehler, die Sie sich ansehen sollten. Es sollte Ihnen sagen, welches Paket fehlt.
Dan-Klasson

Für mich war es eine Kombination aus der Notwendigkeit von Python Dev - "Sudo Apt Install Python3-Dev" - und Build-Essential - "
Sudo Apt

Antworten:


305

Ich hatte im College das gleiche Problem, als ich Linux Mint für das Hauptprojekt meines letzten Jahres installiert hatte. Die dritte Lösung unten funktionierte für mich.

Wenn Sie auf diesen Fehler stoßen, beachten Sie bitte, dass vor dem Fehler möglicherweise ein Paket oder eine Header-Datei fehlt. Sie sollten diese finden und installieren und überprüfen, ob sie funktioniert (z. B. ssl → libssl).

Verwenden Sie für Python 2.x :

$ sudo apt-get install python-dev

Verwenden Sie für Python 2.7 :

$ sudo apt-get install libffi-dev

Verwenden Sie für Python 3.x :

$ sudo apt-get install python3-dev

oder für eine bestimmte Version von Python 3 durch xdie Nebenversion in ersetzen

$ sudo apt-get install python3.x-dev

1
Ich habe hier einen Kommentar für Python 2 (2.7), der mit sudo apt-get install libffi-dev funktioniert. Ich stimme python3-dev für die py34-Lösung zu, die für mich funktioniert hat.
Nikil Komawar

4
Geholfen für Python 3
viddik13

2
sudo apt-get install python3.6-dev für mich gelöst. weil ich auf 3.6 aktualisiert habe
blockwala

4
Ich benutze zusätzlich apt-get install build-essential , um mein Problem zu lösen.
Samuel Dauzon

1
Nur um weitere Informationen hinzuzufügen, wurde dieser Fehler durch Antworten aus dieser Qualitätssicherung
Lord ST

265

Python.h ist nichts anderes als eine Header-Datei. Es wird von gcc zum Erstellen von Anwendungen verwendet. Sie müssen ein Paket namens python-dev installieren. Dieses Paket enthält Header-Dateien, eine statische Bibliothek und Entwicklungstools zum Erstellen von Python-Modulen, zum Erweitern des Python-Interpreters oder zum Einbetten von Python in Anwendungen.

eingeben:

$ sudo apt-get install python-dev

oder

# apt-get install python-dev

siehe http://www.cyberciti.biz/faq/debian-ubuntu-linux-python-h-file-not-found-error-solution/


41
Dies hat das Problem für mich nicht gelöst:Reading state information... Done python-dev is already the newest version.
8bitjunkie

83
@SummerSun Wenn Sie Python3 verwenden, sollten Sie Folgendes verwenden: $ sudo apt-get install python3-dev oder $ sudo apt-get install python3.4-dev
Antoine Brunel

@antoinet, aber ich benutze Python 2.7.4 ... Ich habe dies vor langer Zeit gelöst, aber ich erinnere mich an keine spezifische Lösung
Summer Sun

Auf jeden Fall für mich funktioniert: Ubuntu 16.04 64-Bit; zshell + tmux
Mr_Spock

1
Verwenden Sie für python3.x den Befehl $ sudo apt-get install python3.x-dev
SolitaryReaper

184

Versuchen Sie, diese Pakete zu installieren.

sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev libssl-dev

sudo easy_install greenlet

sudo easy_install gevent

2
Ich habe keine vernünftige Antwort darauf gefunden, warum dieser Fehler auftritt! Warum müssen wir all diese Pakete installieren? Wenn möglich, erklären Sie mir bitte "'x86_64-linux-gnu-gcc' fehlgeschlagen"
Shashank

122
Ja, eines dieser Pakete könnte das
Problem

26
Build-Essential und Python-Dev waren in meinem Fall genug.
Alfabravo

77
Abgestimmt, weil die Frage nicht beantwortet wurde. Warum muss ich qt4-docs installieren, um dieses Problem zu beheben?
Reggie

9
Build-Essential und Python-Dev ist genug für meine
vinayrks

108

Sie müssen diese Pakete installieren:

sudo apt-get install libpq-dev python-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libffi-dev

2
Dieser hat für mich gearbeitet. Ich hatte alle Python- und Build-Pakete aus früheren Antworten, mir fehlten diese lib * -Pakete . VIELEN DANK!
Shadyyx

1
Arbeitete unter void Linux.
xaos_xv

Dies wird höchstwahrscheinlich auf sauberen Systemen funktionieren, aber in meinem Fall fehlten mir nur die 3 Pakete : libldap2-dev, libpq-devundlibsasl2-dev
Anas Tiour

Arbeitete für Ubuntu 19.10 mit Python 3.7
Malachi Bazar

67
$ sudo apt-get install gcc
$ sudo apt-get install python-dateutil python-docutils python-feedparser python-gdata python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi

ODER VERSUCHEN SIE DIESES:

$ sudo apt-get install libxml2-dev libxslt1-dev

51

Verwenden Sie für Python 3.4 :

sudo apt-get install python3.4-dev

Für Python 3.5 verwenden Sie:

sudo apt-get install python3.5-dev

Verwenden Sie für Python 3.6 :

sudo apt-get install python3.6-dev

Verwenden Sie für Python 3.7 :

sudo apt-get install python3.7-dev

Verwenden Sie für Python 3.8 :

sudo apt-get install python3.8-dev

... und so weiter ...


5
Als Randnotiz habe ich nur sudo verwendet apt-get install python3.6-devund es hat auch funktioniert.
Oder Duan

1
Junge, das war hart - ich habe alles, was oben erwähnt wurde, auf meinem System installiert, bis dieses es schließlich für mich repariert hat. Ich verwende eine virtuelle Umgebung mit Python3.6. Danke für das.
SteveJ

Perfekt!! Gelöst!
Ambigus9

1
Ich benutze Python3.8sudo apt-get install python3.8-dev
Elinaldo Monteiro

38

Bei mir hat keiner der oben genannten Punkte funktioniert. Ich habe jedoch das Problem mit der Installation gelöst libssl-dev.

sudo apt-get install libssl-dev

Dies könnte funktionieren, wenn Sie dieselbe Fehlermeldung wie in meinem Fall haben:

Schwerwiegender Fehler: openssl / opensslv.h: Keine solche Datei oder kein solches Verzeichnis ... .... Befehl 'x86_64-linux-gnu-gcc' mit Exit-Status 1 fehlgeschlagen


2
Ich auch. Die akzeptierte Antwort scheint etwas übertrieben.
Esteban

Dies funktionierte auch für mich, ohne dass ich ein paar von der akzeptierten Antwort herunterladen musste
DanMossa

1
Dies ist normalerweise diese Bibliothek, die fehlt, wenn ich das Kryptografiepaket in Python installiere.
Pobe

Dies war auch für mich das Problem. Ich konnte es an der Standardzeile "src / pycurl.h: 164: 28: schwerwiegender Fehler: openssl / ssl.h: Keine solche Datei oder kein solches Verzeichnis" erkennen, die kurz vor der in diesem Beitrag in Frage gestellten Zeile gedruckt wurde. "Fehler: Befehl 'x86_64- linux-gnu-gcc 'fehlgeschlagen mit Exit-Status 1 "
claudod

34

In meinem Fall fehlte das Paket libffi-dev .

Was hat funktioniert:

sudo apt-get install libffi-dev

13

am Ubuntu 14.04:

sudo apt-file search ffi.h 

ist zurückgekommen:

chipmunk-dev: /usr/include/chipmunk/chipmunk_ffi.h
ghc-doc: /usr/share/doc/ghc-doc/html/users_guide/ffi.html
jython-doc: /usr/share/doc/jython-doc/html/javadoc/org/python/modules/jffi/jffi.html
libffi-dev: /usr/include/x86_64-linux-gnu/ffi.h
libffi-dev: /usr/share/doc/libffi6/html/Using-libffi.html
libgirepository1.0-dev: /usr/include/gobject-introspection-1.0/girffi.h
libgirepository1.0-doc: /usr/share/gtk-doc/html/gi/gi-girffi.html
mlton-basis: /usr/lib/mlton/include/basis-ffi.h
pypy-doc: /usr/share/doc/pypy-doc/html/config/objspace.usemodules._ffi.html
pypy-doc: /usr/share/doc/pypy-doc/html/config/objspace.usemodules._rawffi.html
pypy-doc: /usr/share/doc/pypy-doc/html/rffi.html

Ich habe mich für die Installation von libffi-dev entschieden

sudo apt-get install libffi-dev

hat perfekt funktioniert


2
Diese Lösung hat mir nicht nur geholfen, meine ffi.hfehlende Abhängigkeit zu beheben, sondern auch andere fehlende Abhängigkeiten zu beheben . Vielen Dank!
Dário

Das hat wirklich geholfen. Mir fehlte die angerufene Datei pcrecpp.h. Und das Paket, das ich installieren musste, war libpcre3-dev.
Jeetendra Pujari

8

In meinem Fall pipkonnte ich keine Bibliotheken installieren. Ich habe die oben angegebenen Lösungen ausprobiert, aber keine hat funktioniert, aber die folgenden haben bei mir funktioniert:

sudo apt upgrade gcc

Normalerweise passiert dies, wenn wir keine Umgebung verwenden
Yunus

7

Obwohl es sich um eine alte Frage handelt, werde ich meine Meinung hinzufügen.

Ich denke, die richtige Antwort hängt von der Fehlermeldung des gcc-Compilers ab, etwa "Missing xxxx.h".

Dies kann in einigen Fällen hilfreich sein:

sudo apt-get install build-essential python-dev

5

Die folgende Antwort hat bei mir funktioniert. Sie können versuchen:

sudo apt-get install python3-lxml

Und für Python2:sudo apt-get install python-lxml
Ajeet Shah

5

Fehler: Fehler: Befehl 'x86_64-linux-gnu-gcc' mit Exit-Status 1 fehlgeschlagen

Durch Ausführen wurde sudo apt-get install python-devder Fehler behoben.


2
Oder ausführen sudo apt-get install python3-dev.
ecolell

4

Unter Verwendung von Ubuntu 14.04 LTS mit einem virtualenvlaufenden Python 3.5 musste ich Folgendes tun:

sudo apt-get install python3.5-dev

Die anderen Befehle:

sudo apt-get install python-dev
sudo apt-get install python3-dev

Hat nicht geholfen. Ich denke, das liegt daran virtualenv, dass man sich auf das systemweite python-devPaket verlassen muss und es mit der virtualenvPython-Version der Version übereinstimmen muss . Mit den oben genannten Befehlen werden jedoch python-devPython 2.x und Python 3.x installiert , die mit Ubuntu 14.04 (3.4) und nicht 3.5 geliefert werden.


4

Das funktioniert bei mir, 12.04, python2.7.6

sudo apt-get install libxml2 libxml2-dev libxslt1-dev
sudo apt-get install lxml

1
E: Unable to locate package lxml Ich verstehe folgendes. :(
kRazzy R

@kRazzyR versuchen, sudo apt-get install python-lxmlBefehl auszuführen
Kushan Gunasekera


3

Nachdem ich heute meinen Computer mit pip aktualisiert und die anderen Antworten hier überprüft habe, kann ich Ihnen sagen, dass es ALLES sein könnte. Sie sollten Fehler für Fehler überprüfen und nach der spezifischen Bibliothek suchen, die Sie benötigen. In meinem Fall waren dies die Bibliotheken, die ich installieren musste:

$ sudo apt-get install libssl-dev
$ sudo apt-get install libffi-dev
$ sudo apt-get install libjpeg-dev
$ sudo apt-get install libvirt-dev
$ sudo apt-get install libsqlite3-dev
$ sudo apt-get install libcurl4-openssl-dev
$ sudo apt-get install libxml2-dev libxslt1-dev python-dev

HTH


3

Trinkgeld : Bitte betrachten Sie dies nicht als Antwort. Nur um auch jemand anderem zu helfen.

Ich hatte ein ähnliches Problem bei der Installation psycopg2 . Ich habe installiert build-essential, python-devund auch, libpq-devaber es hat den gleichen Fehler ausgelöst.

error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Da ich es bei der Bereitstellung eilig hatte, kopierte ich endlich die vollständige Zeile aus der Antwort von @ user3440631.

sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev

Und es hat wie ein Zauber funktioniert. konnte aber nicht finden, welches Paket mein Problem behoben hat. Bitte aktualisieren Sie den Kommentar, wenn jemand eine Idee über das psycopg2Abhängigkeitspaket vom obigen Befehl hat.


2
Ich habe mein psycopg2- Problem durch die Installation des Postgresql-Devel- Pakets unter CentOS gelöst .
Phytiker

3
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Viel Zeit habe ich den gleichen Fehler bei der Installation M2Crypto& bekommen pygraphvizund alle in der genehmigten Antwort genannten Dinge installiert . Aber diese Zeile löste auch alle meine Probleme mit den anderen Paketen in der genehmigten Antwort .

sudo apt-get install libssl-dev swig
sudo apt-get install -y graphviz-dev

Dieses swigPaket hat mir das Leben als Lösung für M2Cryptound graphviz-devfür gerettet pygraphviz. Ich hoffe das wird jemandem helfen.


2

Für mich musste ich sicherstellen, dass ich die richtige Version der Kryptographie verwendete. pip.freeze hatte und ältere Version und sobald ich die neueste verwendet habe, das Problem, wenn weg.


2

Zuerst müssen Sie herausfinden, was das eigentliche Problem war. Sie sehen, dass der C-Compiler fehlgeschlagen ist, aber Sie wissen noch nicht warum. Scrollen Sie nach oben, wo Sie den ursprünglichen Fehler erhalten. In meinem Fall habe ich beim Versuch, einige Pakete mit zu installieren pip3, Folgendes gefunden:

    Complete output from command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-4u59c_8b/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-itjeh3va-record/install-record.txt --single-version-externally-managed --compile --user:
    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory

 #include <ffi.h>

                 ^

compilation terminated.

In meinem Fall musste ich also installieren libffi-dev.


1
Dieser in der Frage dargestellte Compilerfehler ist mit Sicherheit sehr relativ. Mein Fall war zum Beispiel genau wie der Ihre: Ich habe bcryptüber installiert pip3, und die Ausgabe war ziemlich groß. Als pip3 install bcryptich die ersten Nachrichten von beobachtete , wurde mir klar, dass dies libffi-devdas Paket war, das alle Probleme für die nächsten Schritte des Installationsprozesses verursachte. Gut beobachtet, Freund :). Ich hoffe, Sie haben nichts dagegen, wenn ich Ihrer Antwort ein paar Cent gebe, was für mich eine bessere Überlegung verdient. Grüße.
ivanleoncz

2
sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev

sudo easy_install greenlet

sudo easy_install gevent

1

Keine der oben genannten Antworten hat bei mir funktioniert, als ich auf meinem Ubuntu 14.04 das gleiche Problem hatte

Dies löste jedoch den Fehler:

sudo apt-get install python-numpy libicu-dev


Odoonicht abhängig von python-numpy.
Kenly

Dies ist die einzige Lösung, die in Ubuntu 16.04 für mich funktioniert hat
Muhammad Hassan

1

Für mich hat es geholfen zu installieren libxml2-devund libxslt1-dev.

sudo apt-get install libxml2-dev

1

Mein Stack war so:

> >                            ^
> >     In file included from /usr/include/openssl/ssl.h:156:0,
> >                      from OpenSSL/crypto/x509.h:17,
> >                      from OpenSSL/crypto/crypto.h:17,
> >                      from OpenSSL/crypto/crl.c:3:
> >     /usr/include/openssl/x509.h:751:15: note: previous declaration of X509_REVOKED_dup was here
> >      X509_REVOKED *X509_REVOKED_dup(X509_REVOKED *rev);
> >                    ^
> >     error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
> >     
> >     ----------------------------------------   Rolling back uninstall of > pyOpenSSL Command "/home/marta/env/pb/bin/python -u -c
> "import setuptools,
> > tokenize;__file__='/tmp/pip-build-14ekWY/pyOpenSSL/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n',
> > '\n');f.close();exec(compile(code, __file__, 'exec'))" install
> > --record /tmp/pip-2HERvW-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/marta/env/pb/include/site/python2.7/pyOpenSSL" failed with error
> > code 1 in /tmp/pip-build-14ekWY/pyOpenSSL/

Im gleichen Fall berücksichtigen Sie bitte den Tippfehler in einer der Installationsdateien und bearbeiten Sie ihn manuell, indem Sie "X509_REVOKED_dup" in "X509_REVOKED_dupe" ändern (keine Anführungszeichen). Ich habe die x509.h-Datei bearbeitet:

sed -es / X509_REVOKED_dup / X509_REVOKED_dupe / g '-i usr / include / openssl / x509.h

und es hat bei mir funktioniert, aber bitte konsultieren Sie den unten verlinkten Beitrag, da sie eine andere Datei bearbeitet haben:

sed -es / X509_REVOKED_dup / X509_REVOKED_dupe / g '-i OpenSSL / crypto / crl.c.

https://groups.google.com/forum/#!topic/kivy-users/Qt0jNIOACZc


1

In meinem Fall hat der Befehl sudo apt-get install unixodbc-devdas Problem behoben. Ich habe einen Fehler speziell für die Header-Datei sql.h erhalten.


0

Für Centos 7 Verwenden Sie den folgenden Befehl, um das Python Development Package 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 install libffi-devel

sudo yum install openssl-devel


0

Wie Robin Winslow in einem Kommentar sagt:

Ich habe meine Lösung hier gefunden: stackoverflow.com/a/5178444/613540

In meinem Fall war meine vollständige Fehlermeldung:

/usr/bin/ld: cannot find -lz 
collect2: error: ld returned 1 exit status
error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Ich habe versucht, einen Schraubenschlüssel zu installieren :

sudo python3 setup.py install

Mit dem angegebenen Stackoverflow-Link löse ich dieses Problem durch:

sudo apt install zlib1g-dev

Beachten Sie, dass die folgenden Pakete bereits installiert wurden:

libxslt1-dev is already the newest version.
python3-dev is already the newest version.
libxml2-dev is already the newest version.

Hoffe das wird helfen!


0

In meinem Fall oursqlverursachte dies den gleichen (generischen) Fehler wie unten.

In file included from oursqlx/oursql.c:236:0:
  oursqlx/compat.h:13:19: fatal error: mysql.h: No such file or directory
  compilation terminated.
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for oursql
  Running setup.py clean for oursql

Also wusste ich, dass ich ein libmysqlcppconn-devPaket haben muss.

sudo apt-get install libmysqlcppconn-dev

Und alles gut!


Im Allgemeinen habe ich später die Datei setup.py unseres ourql-Pakets überprüft und festgestellt, dass sie mysqld verwendet. Daher habe ich sie installiert sudo apt-get install libmysqld-devund es hat für mich funktioniert.
Jay Modi

MacOS-Lösung für unsere SQL-Installationsprobleme: askubuntu.com/questions/663919/…
Jay Modi

0

Das hat bei mir funktioniert:

sudo apt install zlib1g-dev

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.