237

我想eventlet在我的系统上安装,以便让“群”进行软件部署。但终端显示 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`

为什么Python.h找不到?

4

18 回答 18

402

您的安装失败,因为您没有安装 python 开发头文件。您可以通过 ubuntu/debian 上的 apt 执行此操作:

sudo apt-get install python-dev 

对于 python3 使用:

sudo apt-get install python3-dev

因为eventlet您可能还需要libevent安装这些库,所以如果您收到错误消息,您可以使用以下命令安装 libevent:

sudo apt-get install libevent-dev
于 2012-06-19T05:15:13.767 回答
55

对于 Fedora:

sudo yum install python-devel

sudo yum install libevent-devel

最后:

sudo easy_install gevent
于 2014-12-31T09:44:27.053 回答
37

CentOS上对我有用的是:

sudo yum -y install gcc
sudo yum install python-devel
于 2018-01-16T09:23:38.907 回答
30

对于Redhat 版本(Centos 7)使用以下命令安装 Python 开发包

蟒蛇 2.7

sudo yum install python-dev

蟒蛇 3.4

sudo yum install python34-devel

蟒蛇 3.6

sudo yum install python36-devel

如果问题仍未解决,请尝试安装以下软件包 -

sudo yum install python-devel

sudo yum install openssl-devel

sudo yum install libffi-devel
于 2017-06-26T14:59:36.950 回答
21

MacOS上,我在安装fbprophetwhich requires pystanwhich requiresgcc编译时遇到了麻烦。我会一直收到同样的错误:命令“gcc”失败,退出状态为 1

我想我为自己解决了这个问题:

我曾经brew install gcc安装过最新版本,结果是gcc-8

然后我确保在gcc运行时会使用它gcc-8

它要么起作用,因为我添加alias gcc='gcc-8了我的.zshrc(与zsh.bashrc相同) ,或者因为我跑了(见评论export PATH=/usr/local/bin:$PATH

另外:我所有的尝试都在虚拟环境中,我只能通过fbprophet全局安装(使用pip )成功,但在venv中仍然没有成功

于 2018-09-28T15:04:36.090 回答
7

这是一篇旧帖子,但我在 AWS EC2 安装正则表达式时遇到了同样的问题。这对我来说非常有用

sudo yum -y install gcc

接下来

sudo yum -y install gcc-c++
于 2019-05-28T06:44:22.303 回答
5

试试这个 :

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

我在 Ubuntu 14.04 上遇到了类似的问题。对我来说,以下 Ubuntu 软件包

于 2017-08-19T12:00:57.013 回答
5

MacOS上,我在尝试安装fbprophetgcc的依赖项之一时也遇到了问题。

在尝试了@Boris 推荐的几个步骤后Facebook Prophet 项目页面中的以下命令最终对我有用。

conda install -c conda-forge fbprophet

它安装了所有需要的依赖项fbprophet。确保您已安装 anaconda。

于 2019-10-23T13:40:35.040 回答
5

如果还是不行,可以试试这个

sudo apt-get install build-essential

就我而言,它解决了问题。

于 2020-02-21T13:58:55.810 回答
4

这个页面将拯救你的生命,对于即将到来的所有进一步的 lib 问题,

对于高山(>=3.6),使用

apk --update --upgrade add gcc musl-dev jpeg-dev zlib-dev libffi-dev cairo-dev pango-dev gdk-pixbuf-dev
于 2020-06-30T19:12:04.673 回答
3
于 2016-08-25T03:55:17.300 回答
3

对于 openSUSE 42.1 Leap Linux 使用这个

sudo zypper install python3-devel
于 2017-05-29T04:18:28.920 回答
2

我正在使用MacOS catalina 10.15.4。所有发布的解决方案都不适合我。对我有用的是:

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

pip3用于python3

于 2020-06-25T21:32:37.310 回答
1

如果您像我一样在 Mac 上,请在终端中尝试此操作:xcode-select --install

然后接受安装请求,然后按照此问题中的描述工作

于 2020-06-28T03:32:46.917 回答
0

从源代码构建并安装,这在最新版本(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
于 2015-03-01T18:45:14.530 回答
0

同样,我像这样修复它(注意python34):

sudo yum install python34-devel
于 2020-05-11T05:33:54.143 回答
0

sudo apt install gcc

它适用于 Ubuntu 20.10 上的 PyCharm。

于 2021-02-15T13:43:37.213 回答
0

如果您正在迁移到更现代的 python3 版本,例如python3.5 to python3.8,如果您已经安装了推荐的库来处理建议的 gcc 构建python3-dev+ 其他库,您可能想要检查/升级失败的库版本。

这取决于包装。更高版本的 python3 可能不支持某些版本的软件包。

于 2021-09-14T00:15:20.107 回答