安装脚本退出并显示错误:命令'x86_64-linux-gnu-gcc'失败,退出状态为1

Mad*_*ake 304 python gcc pip odoo-server

当我尝试安装时odoo-server,出现以下错误:

error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

谁能帮我解决这个问题?

小智 255

Python.h只是一个头文件.它由gcc用于构建应用程序.您需要安装一个名为python-dev的软件包.该软件包包括头文件,静态库和用于构建Python模块的开发工具,扩展Python解释器或在应用程序中嵌入Python.

输入:

$ sudo apt-get install python-dev
Run Code Online (Sandbox Code Playgroud)

要么

# apt-get install python-dev
Run Code Online (Sandbox Code Playgroud)

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

  • @SummerSun如果你正在使用python3,你应该使用:$ sudo apt-get install python3-dev或$ sudo apt-get install python3.4-dev (81认同)
  • 这对我来说没有解决问题:`读取状态信息......完成python-dev已经是最新版本了 (40认同)
  • 如果你使用的是ubuntu,你还需要安装build-essential。检查这个答案:/sf/answers/3817388291/ (4认同)
  • 对于 python3.x,使用命令 $sudo apt-get install python3.x-dev (2认同)

Pau*_*lie 247

我在大学里遇到了同样的问题,为我最后一年的主要项目安装了Linux Mint,下面的第三个解决方案适合我.

遇到这个错误,请在错误之前注意它可能说你是缺少一个包或头文件,你会发现那些并安装它们,并验证其是否工作正常.(例如ssl - > libssl)

对于Python 2.x使用:

   $ sudo apt-get install python-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 2.7使用:

   $ sudo apt-get install libffi-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.x使用:

   $ sudo apt-get install python3-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.4使用:

   $ sudo apt-get install python3.4-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.5使用:

   $ sudo apt-get install python3.7-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.6使用:

   $ sudo apt-get install python-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.7使用:

   $ sudo apt-get install libffi-dev
Run Code Online (Sandbox Code Playgroud)

  • 我已经安装了“python3.x-dev”,但仍然有问题,但塞缪尔的“sudo apt-get install build-essential”建议完美地工作了 (23认同)
  • 我另外使用 **apt-get install build-essential** 来解决我的问题。 (22认同)
  • 帮助python 3 (4认同)
  • sudo apt-get install python3.6-dev 为我解决了。因为我更新到 3.6 (2认同)
  • 这是最新的答案,+ 1,谢谢 (2认同)
  • `sudo apt-get install python3.9-dev` 就像一个魅力:) (2认同)

Mad*_*ake 176

尝试安装这些包.

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
Run Code Online (Sandbox Code Playgroud)

  • 是的,其中一个软件包可能会修复它,但特别是知道哪个软件包会很好 (115认同)
  • 因为没有回答这个问题而被倾倒.为什么我必须安装qt4-docs来解决这个问题? (76认同)
  • 在我的情况下,build-essential和python-dev就足够了. (24认同)
  • 我在这里找到了我的解决方案:http://stackoverflow.com/a/5178444/613540 (16认同)
  • build-essential和python-dev足以满足我的需求 (8认同)
  • 我没有找到任何关于为什么会发生此错误的合理答案!为什么我们需要安装所有这些软件包...如果可能,请向我解释“'x86_64-linux-gnu-gcc'失败” (4认同)

Ken*_*nly 103

您需要安装这些包:

sudo apt-get install libpq-dev python-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libffi-dev
Run Code Online (Sandbox Code Playgroud)

  • 真棒!这适用于Ubuntu 16.04 (8认同)
  • 这个为我工作。我从以前的答案中获得了所有的python和build软件包,**我缺少这些lib *软件包**。谢谢! (2认同)

小智 65

$ 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
Run Code Online (Sandbox Code Playgroud)

或者尝试这个:

$ sudo apt-get install libxml2-dev libxslt1-dev
Run Code Online (Sandbox Code Playgroud)

  • 安装`libxml2-dev`和`libxslt1-dev`就可以了. (9认同)

kam*_*ame 41

对于Python 3.4使用:

sudo apt-get install python3.4-dev
Run Code Online (Sandbox Code Playgroud)

对于Ubuntu/Mint上的Python 3.5,请使用:

sudo apt-get install python3.5-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.6使用:

sudo apt-get install python3.6-dev
Run Code Online (Sandbox Code Playgroud)

对于Python 3.7使用:

sudo apt-get install python3.7-dev
Run Code Online (Sandbox Code Playgroud)

  • 作为旁注,我刚刚使用了sudo`apt-get install python3.6-dev`,它也有效. (5认同)
  • 随着 python 的每一个新版本,我都会再次登陆这里:-) (2认同)

小智 35

对我来说,没有上述工作.但是,我解决了安装问题libssl-dev.

sudo apt-get install libssl-dev
Run Code Online (Sandbox Code Playgroud)

如果您的错误消息与我的情况相同,则可能会有效:

致命错误:openssl/opensslv.h:没有这样的文件或目录......命令'x86_64-linux-gnu-gcc'失败,退出状态为1

  • 我也是.接受的答案似乎有点过分. (2认同)

小智 34

在我的情况下,它缺少包libffi-dev.

什么有效:

sudo apt-get install libffi-dev
Run Code Online (Sandbox Code Playgroud)


off*_*dal 18

在我的情况下,以下命令发挥了神奇作用

sudo apt-get install gcc python3-dev
Run Code Online (Sandbox Code Playgroud)

如果上述命令不起作用,请尝试执行以下两个命令

sudo apt-get install gcc python-dev
Run Code Online (Sandbox Code Playgroud)
  1. 当您希望它安装在您的机器中设置为默认 python 的 python 版本时,就是这种情况。

或者

sudo apt-get install gcc python3.x-dev
Run Code Online (Sandbox Code Playgroud)
  1. 其中python3.x代表version您机器上安装的python数量。

  • python3.7-dev 包帮助了我。其他的都不是。只有在我安装了这个之后它才起作用。 (4认同)

Evy*_*van 12

在ubuntu 14.04上:

sudo apt-file search ffi.h 
Run Code Online (Sandbox Code Playgroud)

回:

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
Run Code Online (Sandbox Code Playgroud)

我选择安装libffi-dev

sudo apt-get install libffi-dev
Run Code Online (Sandbox Code Playgroud)

工作得很好

  • 不仅这个解决方案帮助我修复了我的`ffi.h`缺失依赖项,还帮助修复了其他缺少的依赖项.谢谢! (2认同)

yun*_*nus 9

在我pip无法安装库的情况下,我尝试了上面给出的解决方案,但没有一个起作用,但下面的对我有效:

sudo apt upgrade gcc
Run Code Online (Sandbox Code Playgroud)


Eva*_*tti 8

这对我来说已经足够了:

sudo apt-get install build-essential
Run Code Online (Sandbox Code Playgroud)


小智 6

尽管这是一个老问题,但我会加上我的观点.

我认为正确的答案取决于gcc编译器的错误信息,如"Missing xxxx.h"

在某些情况下这可能有所帮助:

sudo apt-get install build-essential python-dev
Run Code Online (Sandbox Code Playgroud)


小智 6

在带有 python3 的 Linux Mint 中

$ sudo apt install build-essential python3-dev
Run Code Online (Sandbox Code Playgroud)

应该足够了


小智 5

以下答案对我有用,您可以尝试:

sudo apt-get install python3-lxml
Run Code Online (Sandbox Code Playgroud)


Del*_*eet 5

使用 Ubuntu 14.04 LTS 和virtualenv正在运行的 python 3.5,我必须这样做:

sudo apt-get install python3.5-dev
Run Code Online (Sandbox Code Playgroud)

其他命令:

sudo apt-get install python-dev
sudo apt-get install python3-dev
Run Code Online (Sandbox Code Playgroud)

没有帮助。我认为这是因为virtualenv需要依赖系统范围的python-dev包并且它必须匹配virtualenvPython的版本。但是,使用上述命令安装python-devpython 2.x 和 Ubuntu 14.04 附带的 python 3.x,即 3.4,而不是 3.5。


小智 5

错误:错误:命令“x86_64-linux-gnu-gcc”失败,退出状态为 1

执行sudo apt-get install python-dev解决了错误。

  • 或者执行`sudo apt-get install python3-dev`。 (2认同)