tập lệnh thiết lập đã thoát với lỗi: lệnh 'x86_64-linux-gnu-gcc' không thành công với trạng thái thoát 1


333

Khi tôi cố gắng cài đặt odoo-server, tôi đã gặp lỗi sau:

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

Bất cứ ai có thể giúp tôi giải quyết vấn đề này?


3
Đôi khi, đó là dòng trên lỗi này bạn nên xem xét. Nó sẽ cho bạn biết gói nào bị thiếu.
dan-klasson

Đối với tôi, đó là sự kết hợp giữa nhu cầu python dev - "sudo apt install python3-dev" - và build-Essential - "sudo apt install build-Essential"
Maveric

Câu trả lời:


305

Tôi gặp phải vấn đề tương tự ở trường đại học khi cài đặt Linux Mint cho dự án chính của năm cuối cùng, giải pháp thứ ba dưới đây có hiệu quả với tôi.

Khi gặp lỗi này, vui lòng lưu ý trước lỗi, có thể bạn đang thiếu gói hoặc tệp tiêu đề - bạn nên tìm những lỗi đó và cài đặt chúng và xác minh xem nó có hoạt động không (ví dụ: ssl → libssl).

Đối với Python 2.x sử dụng:

$ sudo apt-get install python-dev

Đối với Python 2.7 sử dụng:

$ sudo apt-get install libffi-dev

Đối với Python 3.x sử dụng:

$ sudo apt-get install python3-dev

hoặc đối với phiên bản cụ thể của Python 3, thay thế xbằng phiên bản nhỏ trong

$ sudo apt-get install python3.x-dev

1
Tôi có một nhận xét ở đây cho python 2 (2.7) hoạt động với sudo apt-get install libffi-dev, tôi sẽ đồng ý với python3-dev cho giải pháp py34 phù hợp với tôi.
nikhil komawar

4
Đã giúp cho python 3
viddik13

2
sudo apt-get install python3.6-dev đã giải quyết cho tôi. bởi vì tôi đã cập nhật lên 3.6
blockwala

4
Tôi sử dụng bổ sung apt-get install build-Essential để giải quyết vấn đề của mình.
Samuel Dauzon

1
chỉ để thêm thông tin, lỗi này đã được giải quyết cho tôi bằng các câu trả lời từ QA này -> [ stackoverflow.com/q 432819221/4417806]
Lord ST

265

Python.h không có gì ngoài một tệp tiêu đề. Nó được sử dụng bởi gcc để xây dựng các ứng dụng. Bạn cần cài đặt một gói gọi là python-dev. Gói này bao gồm các tệp tiêu đề, thư viện tĩnh và các công cụ phát triển để xây dựng các mô-đun Python, mở rộng trình thông dịch Python hoặc nhúng Python vào các ứng dụng.

đi vào:

$ sudo apt-get install python-dev

hoặc là

# apt-get install python-dev

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


41
Điều này không giải quyết được vấn đề cho tôi:Reading state information... Done python-dev is already the newest version.
8bitjunkie

83
@SummerSun Nếu bạn đang sử dụng python3, bạn nên sử dụng: $ sudo apt-get install python3-dev hoặc $ sudo apt-get install python3.4-dev
Antoine Brunel

@antoinet nhưng tôi đang sử dụng python 2.7.4 ... Tôi đã giải quyết vấn đề này từ lâu nhưng tôi không nhớ bất kỳ giải pháp cụ thể nào
Mùa hè CN

Chắc chắn làm việc cho tôi: Ubuntu 16.04 64-bit; zshell + tmux
Mr_Spock

1
Đối với python3.x, hãy sử dụng lệnh $ sudo apt-get install python3.x-dev
SolnameReaper

184

Hãy thử cài đặt các gói này.

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
tôi không tìm thấy câu trả lời hợp lý nào về lý do tại sao lỗi này xảy ra! tại sao chúng ta cần cài đặt tất cả các gói này ... nếu có thể thì vui lòng giải thích "'x86_64-linux-gnu-gcc' không thành công" với tôi
Shashank

122
Vâng, một trong những gói này có thể sửa nó nhưng thật tuyệt khi biết gói nào đặc biệt
Shane Reustle 17/2/2015

26
build-Essential và python-dev là đủ trong trường hợp của tôi.
Alfabravo

77
Downvote vì không trả lời câu hỏi. Tại sao tôi phải cài đặt qt4-docs để khắc phục sự cố này?
reggie

9
build-
Essential

108

Bạn cần cài đặt các gói này:

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

2
Cái này làm việc cho tôi Tôi đã có tất cả các gói python và xây dựng từ các câu trả lời trước đó, tôi đã thiếu các gói lib * này . CẢM ƠN!
shadyyx

1
Làm việc trên void linux.
xaos_xv

Đây công việc sẽ nhiều khả năng trên hệ thống sạch sẽ, nhưng trong trường hợp của tôi tất cả những gì đã mất tích được 3 gói: libldap2-dev, libpq-devlibsasl2-dev
Anas Tiour

Đã làm việc cho Ubuntu 19.10 với 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

HOẶC THỬ NÀY:

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

51

Đối với Python 3,4 sử dụng:

sudo apt-get install python3.4-dev

Đối với Python 3.5 sử dụng:

sudo apt-get install python3.5-dev

Đối với Python 3.6 sử dụng:

sudo apt-get install python3.6-dev

Đối với Python 3.7 sử dụng:

sudo apt-get install python3.7-dev

Đối với Python 3.8, sử dụng:

sudo apt-get install python3.8-dev

... và như thế ...


5
Như một lưu ý phụ, tôi chỉ sử dụng sudo apt-get install python3.6-devvà nó cũng hoạt động.
Hoặc Duẩn

1
Chàng trai thật khó khăn - Tôi đã cài đặt mọi thứ được đề cập ở trên trên hệ thống của mình cho đến khi cái này cuối cùng đã sửa nó cho tôi. Tôi đang sử dụng virtualenv với python3.6. Cảm ơn vì điều đó.
SteveJ

Hoàn hảo!! Đã giải quyết!
ambigus9

1
Tôi đang sử dụng Python3.8sudo apt-get install python3.8-dev
Elinaldo Monteiro

38

Đối với tôi không có ở trên làm việc. Tuy nhiên, tôi đã giải quyết vấn đề với việc cài đặt libssl-dev.

sudo apt-get install libssl-dev

Điều này có thể hoạt động nếu bạn có thông báo lỗi giống như trong trường hợp của tôi:

lỗi nghiêm trọng: openssl / opensslv.h: Không có tệp hoặc thư mục như vậy ... .... lệnh 'x86_64-linux-gnu-gcc' không thành công với trạng thái thoát 1


2
Tôi cũng vậy. Câu trả lời được chấp nhận có vẻ hơi quá.
Esteban

Điều này cũng hiệu quả với tôi mà không cần phải tải xuống một loạt từ câu trả lời được chấp nhận
DanMossa

1
Đây thường là thư viện bị thiếu khi tôi cài đặt gói mật mã trong python.
Pobe

Đây cũng là vấn đề đối với tôi. Tôi có thể nói với nó từ dòng stdout "src / pycurl.h: 164: 28: lỗi nghiêm trọng: openssl / ssl.h: Không có tệp hoặc thư mục như vậy" được in ngay trước dòng được hỏi trong bài này "error: lệnh 'x86_64- linux-gnu-gcc 'không thành công với trạng thái thoát 1 "
claudod

34

Trong trường hợp của tôi, nó đã thiếu gói libffi-dev .

Những gì đã làm việc:

sudo apt-get install libffi-dev

13

trên Ubuntu 14.04:

sudo apt-file search ffi.h 

trả lại:

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

Tôi đã chọn cài đặt libffi-dev

sudo apt-get install libffi-dev

làm việc hoàn hảo


2
Giải pháp này không chỉ giúp tôi khắc phục sự ffi.hphụ thuộc bị thiếu của mình mà còn giúp sửa chữa các phụ thuộc bị thiếu khác. Cảm ơn!
Dário

Điều này thực sự có ích. Tôi đã bị mất tập tin được gọi pcrecpp.h. Và gói tôi phải cài đặt là libpcre3-dev.
Jeetendra Pujari

8

Trong trường hợp của tôi pipkhông thể cài đặt thư viện, tôi đã thử các giải pháp được đưa ra ở trên, nhưng không có giải pháp nào hoạt động nhưng bên dưới hoạt động với tôi:

sudo apt upgrade gcc

Thông thường, điều này xảy ra khi chúng ta không sử dụng môi trường
yunus

7

Mặc dù là một câu hỏi cũ, tôi sẽ thêm ý kiến ​​của mình.

Tôi nghĩ rằng câu trả lời đúng phụ thuộc vào thông báo lỗi của trình biên dịch gcc, đại loại như "Thiếu xxxx.h"

Điều này có thể giúp trong một số trường hợp:

sudo apt-get install build-essential python-dev

5

câu trả lời dưới đây làm việc cho tôi, bạn có thể thử:

sudo apt-get install python3-lxml

Và cho python2:sudo apt-get install python-lxml
Ajeet Shah

5

Lỗi: error: lệnh 'x86_64-linux-gnu-gcc' không thành công với trạng thái thoát 1

Thi công đã sudo apt-get install python-devgiải quyết được lỗi.


2
Hoặc thực thi sudo apt-get install python3-dev .
ecolell

4

Sử dụng Ubuntu 14.04 LTS với virtualenvpython 3.5 đang chạy, tôi phải làm:

sudo apt-get install python3.5-dev

Các lệnh khác:

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

Đã không giúp được gì. Tôi nghĩ rằng điều này là dovirtualenv nhu cầu dựa vào python-devgói toàn hệ thống và nó phải phù hợp với virtualenvphiên bản python. Tuy nhiên, sử dụng các lệnh trên sẽ cài đặt python-devcho python 2.x và python 3.x đi kèm với Ubuntu 14.04 là 3.4 chứ không phải 3.5.


4

Điều này làm việc cho tôi, 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 Tôi nhận được sau đây. :(
kRazzy R

@kRazzyR thử chạy sudo apt-get install python-lxmllệnh
Kushan Gunasekera


3

Sau khi nâng cấp máy tính của tôi với pip hôm nay và kiểm tra các câu trả lời khác ở đây, tôi có thể nói với bạn rằng nó có thể là BẤT K .. Bạn nên kiểm tra lỗi do lỗi, tìm kiếm những gì thư viện cụ thể mà bạn cần. Trong trường hợp của tôi, đây là những thư viện mà tôi phải cài đặt:

$ 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

tiền boa : Xin đừng coi đây là câu trả lời. Chỉ để giúp đỡ người khác quá.

Tôi đã có vấn đề tương tự trong khi cài đặt psycopg2 . Tôi đã cài đặt build-essential, python-devvà cũng libpq-devnhưng nó ném lỗi tương tự.

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

Vì tôi đang vội vàng triển khai nên cuối cùng chỉ sao chép toàn bộ dòng từ câu trả lời của @ 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

Và nó làm việc như một lá bùa. nhưng không thể tìm thấy gói nào đã giải quyết vấn đề của tôi. Vui lòng cập nhật nhận xét nếu bất cứ ai có ý tưởng về psycopg2gói phụ thuộc từ lệnh trên.


2
Tôi đã giải quyết vấn đề psycopg2 của mình bằng cách cài đặt gói postgresql-devel trên CentOS.
Nhà tế bào học

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

Rất nhiều lần tôi đã cùng một lỗi khi cài đặt M2Crypto& pygraphvizvà cài đặt tất cả những điều đề cập đến trong các câu trả lời đã được phê duyệt . Nhưng dòng dưới đây đã giải quyết tất cả các vấn đề của tôi với các gói khác trong câu trả lời được phê duyệt .

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

swigGói này đã cứu cuộc đời tôi như là giải pháp cho M2Cryptographviz-devcho pygraphviz. Tôi hy vọng điều này sẽ giúp được ai đó.


2

Đối với tôi, tôi phải chắc chắn rằng mình đang sử dụng phiên bản chính xác của mật mã. Pip.freeze đã có và phiên bản cũ hơn và một khi tôi đã sử dụng vấn đề mới nhất khi đi xa.


2

đầu tiên bạn cần tìm hiểu vấn đề thực sự là gì những gì bạn đang thấy là trình biên dịch C thất bại nhưng bạn chưa biết tại sao. di chuyển đến nơi bạn nhận được lỗi ban đầu. trong trường hợp của tôi, cố gắng cài đặt một số gói bằng cách sử dụng pip3, tôi thấy:

    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.

Vì vậy, trong trường hợp của tôi, tôi cần phải cài đặt libffi-dev.


1
Để chắc chắn, lỗi trình biên dịch này được trình bày về câu hỏi, là rất tương đối. Ví dụ, trường hợp của tôi cũng giống như trường hợp của bạn: Tôi đã cài đặt bcryptqua pip3và đầu ra khá lớn và quan sát các tin nhắn đầu tiên từ đó pip3 install bcrypt, tôi nhận ra rằng đó libffi-devlà gói gây ra tất cả các rắc rối cho các bước tiếp theo của quá trình cài đặt. Quan sát tốt, bạn :). Tôi hy vọng bạn không phải là tâm trí của tôi, nếu tôi đưa ra một số xu cho câu trả lời của bạn, mà đối với tôi, xứng đáng được xem xét tốt hơn. Trân trọng.
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

Không có câu trả lời nào ở trên có hiệu quả với tôi khi tôi gặp vấn đề tương tự trên Ubuntu 14.04

Tuy nhiên, điều này đã giải quyết lỗi:

sudo apt-get install python-numpy libicu-dev


Odoođừng phụ thuộc vào python-numpy.
Kenly

Đây là giải pháp duy nhất hiệu quả với tôi trong Ubuntu 16.04
Muhammad Hassan

1

Đối với tôi nó đã giúp cài đặt libxml2-devlibxslt1-dev.

sudo apt-get install libxml2-dev

1

Ngăn xếp của tôi là như thế:

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

trong trường hợp tương tự, vui lòng xem xét lỗi đánh máy (lỗi) trong một trong các tệp cài đặt và chỉnh sửa thủ công bằng cách thay đổi "X509_REVOKED_dup" thành "X509_REVOKED_dupe" (không có dấu ngoặc kép). Tôi đã chỉnh sửa tệp x509.h:

sed -e's / X509_REVOKED_dup / X509_REVOKED_dupe / g '-i usr / bao gồm / openssl / x509.h

và nó hoạt động với tôi, nhưng vui lòng tham khảo bài viết được liên kết bên dưới, khi họ chỉnh sửa một tệp khác:

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

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


1

Trong trường hợp của tôi, lệnh đã sudo apt-get install unixodbc-devgiải quyết vấn đề. Tôi đã nhận được một lỗi cụ thể cho tệp tiêu đề sql.h.


0

Đối với Centos 7 Sử dụng lệnh bên dưới để cài đặt Gói phát triển Python

Python 2.7

sudo yum cài đặt python-dev

Con trăn 3,4

sudo yum cài đặt python34-devel

Tuy nhiên, nếu vấn đề của bạn chưa được giải quyết, hãy thử cài đặt các gói bên dưới -

sudo yum cài đặt libffi-devel

sudo yum cài đặt openssl-devel


0

Giống như Robin Winslow nói trong một bình luận:

Tôi tìm thấy giải pháp của mình ở đây: stackoverflow.com/a/5178444/613540

Trong trường hợp của tôi, thông báo lỗi hoàn chỉnh của tôi là:

/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

Tôi đã cố gắng để cài đặt torbler :

sudo python3 setup.py install

Với liên kết stackoverflow đã cho, tôi giải quyết vấn đề này bằng cách:

sudo apt install zlib1g-dev

Lưu ý rằng các gói sau đã được cài đặt:

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

Hy vọng rằng sẽ giúp!


0

Trong trường hợp của tôi, đó là oursqlnguyên nhân gây ra lỗi (chung) như dưới đây.

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

Vì vậy, tôi biết rằng tôi cần phải có libmysqlcppconn-devgói.

sudo apt-get install libmysqlcppconn-dev

Và tất cả đều tốt!


Về lưu ý chung, sau đó tôi đã kiểm tra tệp setup.py của gói chúng tôi và phát hiện ra rằng nó sử dụng mysqld và do đó tôi đã cài đặt sudo apt-get install libmysqld-devvà nó hoạt động với tôi.
Jay Modi

giải pháp macOS cho các sự cố cài đặt của chúng tôi: Askubfox.com/questions/663919/ mẹo
Jay Modi

0

Điều này làm việc cho tôi:

sudo apt cài đặt zlib1g-dev

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.