Ошибка: команда 'gcc' завершилась неудачно с состоянием выхода 1 при установке Eventlet
Я хотел установить 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
быть найденным?
19 ответов
Ваша установка не удалась, потому что у вас не установлены заголовки разработки Python. Вы можете сделать это через apt в Ubuntu/ Debian с помощью:
sudo apt-get install python-dev
для использования на python3:
sudo apt-get install python3-dev
Для eventlet вам также могут понадобиться библиотеки libevent, поэтому, если вы получите сообщение об ошибке, вы можете установить libevent с помощью:
sudo apt-get install libevent-dev
Для Fedora:
sudo yum install python-devel
sudo yum install libevent-devel
и наконец:
sudo easy_install gevent
Я перепробовал все вышеперечисленные ответы. Но то, что работало для меня, было для CentOS:
sudo yum -y install gcc
sudo yum install python-devel
Для версий Redhat (Centos 7) Используйте команду ниже для установки пакета разработки Python
Python 2.7
sudo yum установить python-dev
Python 3.4
sudo yum установить python34-devel
Тем не менее, если ваша проблема не решена, попробуйте установить ниже пакеты -
sudo yum установить python-devel
sudo yum install openssl-devel
sudo yum установить libffi-devel
На MacOS у меня были проблемы с установкой fbprophet
что требует pystan
что требует gcc
Скомпилировать. Я бы последовательно получал ту же ошибку: команда "GCC" не удалось с состоянием выхода 1
Я думаю, что я решил проблему для себя так:
я использовал brew install gcc
установить новейшую версию, которая оказалась gcc-8
Тогда я убедился, что когда gcc
побежал бы использовать gcc-8
вместо.
Это либо сработало, потому что я добавил alias gcc='gcc-8
в моем .zshrc
(такой же как .bashrc
но для зш) или потому что я бегал export PATH=/usr/local/bin:$PATH
(см. комментарий)
Кроме того: все мои попытки были в виртуальной среде, и мне удалось только установить fbprophet
глобально (с пипсами), но все еще безуспешно внутри венва
Если он все еще не работает, вы можете попробовать это
sudo apt-get install build-essential
в моем случае это решило проблему.
Это старый пост, но я столкнулся с той же проблемой на AWS EC2 при установке regex. Это работает идеально для меня
sudo yum -y install gcc
и следующий
sudo yum -y install gcc-c++
На MacOS у меня также были проблемы с установкойfbprophet
который имел gcc
как одна из его зависимостей.
Попробовав несколько шагов, рекомендованных @ Boris, приведенная ниже команда со страницы проекта Facebook Prophet в конце концов сработала.
conda install -c conda-forge fbprophet
Он установил все необходимые зависимости для fbprophet
. Убедитесь, что у вас установлена анаконда.
Попробуй это:
sudo apt-get install libblas-dev libatlas-base-dev
У меня была похожая проблема на Ubuntu 14.04. Для меня следующие пакеты Ubuntu
Эта страница спасет вашу жизнь от всех предстоящих проблем с lib,
Для Alpine(>=3,6),
использовать apk --update --upgrade add gcc musl-dev jpeg-dev zlib-dev libffi-dev cairo-dev pango-dev gdk-pixbuf-dev
Для openSUSE 42.1 Leap Linux используйте это
sudo zypper install python3-devel
Для 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
Установить eventlet:
sudo yum install python-devel
sudo easy_install -ZU eventlet
Информация о терминале:
[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
Я использую 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
Если вы работаете на Mac, как я, попробуйте в терминале: xcode-select --install
Затем примите запрос на установку, после этого он будет работать https://github.com/python-pillow/Pillow/issues/3438
В macOS , если сообщение
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
...
является частью журнала ошибок, установка инструментов разработчика может решить эту проблему.
Следующая команда терминала может запустить установку программного обеспечения инструментов разработчика:
$ xcode-select --install
Я столкнулся с подобной проблемой при установкеgreenlet
, и вышеизложенное решило эту проблему.
Точно так же я исправил это вот так (обратите внимание python34
):
sudo yum install python34-devel
Если вы переходите на более современную версию python3, например
python3.5 to python3.8
Вы можете проверить / обновить версии библиотеки, которые не работают, если вы уже установили рекомендуемые библиотеки для обработки сборки gcc.
python3-dev
+ другие библиотеки, как это предлагается.
Это зависит от упаковки. Некоторые версии пакетов могут не поддерживаться в более поздних версиях python3.
Сборка из исходного кода и установка, это исправлено в последней версии (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