Ошибка: команда 'gcc' не удалась с условием завершения при установке psycopg2 - программирование
Подтвердить что ты не робот

Ошибка: команда 'gcc' не удалась с условием завершения при установке psycopg2

Мне нужно установить psycopg2 для openerp процесса установки, но я всегда обнаружил эту ошибку. Я уже использовал pip и easy_install, моя gcc - последняя версия. На самом деле нужна ваша помощь для решения моей проблемы...

это моя полная ошибка с easy_install..

[[email protected] ~]# easy_install psycopg2    
Searching for psycopg2    
Reading http://pypi.python.org/simple/psycopg2/    
Reading http://initd.org/psycopg/    
Reading http://initd.org/projects/psycopg2    
Best match: psycopg2 2.4.5    
Downloading http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.5.tar.gz    
Processing psycopg2-2.4.5.tar.gz    
Running psycopg2-2.4.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-anWVvJ/psycopg2-2.4.5/egg-dist-tmp-cZbdtn

no previously-included directories found matching 'doc/src/_build' In file included from psycopg/psycopgmodule.c:27:
./psycopg/psycopg.h:31:22: error: libpq-fe.h: No such file or directory In file included from psycopg/psycopgmodule.c:29:

...

error: Setup script exited with error: command 'gcc' failed with exit status 1
4b9b3361

Ответ 1

Вам нужно будет установить пакет разработки для PostgreSQL, который, например, под Ubuntu, является sudo apt-get install libpq-dev... и для CentOS it yum install postgresql-devel

Ответ 2

Для случая CentOS у меня была такая же проблема, что я решил установить эти пакеты:

sudo yum install postgresql-libs
sudo yum install postgresql-devel
sudo yum install python-devel

только тогда я смог успешно выполнить:

sudo easy_install psycopg2

Ответ 3

Возможно, в вашей системе отсутствуют заголовки Python. Чтобы исправить это, запустите:

sudo apt-get install python-dev

или

sudo apt-get install python3-dev

Ответ 4

На новом ubuntu 14.04.2 LTS на экземпляре EC2 мне удалось установить psycopg2 после установки следующих пакетов:

sudo apt-get install gcc
sudo apt-get install postgres-xc-server-dev
sudo apt-get install libpq-dev
sudo apt-get install postgresql-client-common
sudo apt-get install postgresql-common

И в новом экземпляре AMI linux (CentOS):

sudo yum install postgresql-devel
sudo yum install gcc*

Надеюсь, что это поможет,

Эрез

Ответ 5

Я пытаюсь установить pgsql на простой экземпляр Amazon Linux EC2 и получаю эту ошибку. Ответ на Nicolás, я установил его предлагаемый список пакетов, но я продолжал получать ошибку. Более внимательно посмотрев на ошибку, я заметил, что команда gcc включала файлы pgsql93:

gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.6.1 (dt dec pq3 ext lo64)" -DPG_VERSION_HEX=0x09030A -DHAVE_LO64=1 -I/usr/include/python2.7 -I. -I/usr/include/pgsql93 -I/usr/include/pgsql93/server -c psycopg/psycopgmodule.c -o build/temp.linux-x86_64-2.7/psycopg/psycopgmodule.o -Wdeclaration-after-statement

Глядя в /usr/include/, я вижу pgsql92/, но не pgsql93/. Поэтому я посмотрел, какие пакеты, связанные с pgsql, были установлены, и я заметил их:

postgresql92.x86_64 postgresql92-devel.x86_64 postgresql92-libs.x86_64 postgresql93.x86_64 postgresql93-libs.x86_64

Мне кажется, что там должно быть postgresql93-devel, поэтому я попробовал:

sudo yum install postgresql93-devel

И это исправило проблему для меня! Поэтому я предполагаю, что тема такова: Посмотрите на вызов gcc и посмотрите, что он держит в. Следуйте за крошками оттуда.

Ответ 6

В centos 7. Я бы использовал sudo yum install postgresql96-devel.x86_64 для решения моей проблемы.

Ответ 7

Вызов gcc не удалось, gcc не смог скомпилировать источник. Вероятно, причиной является

./psycopg/psycopg.h:31:22: error: libpq-fe.h: No such file or directory In file included from psycopg/psycopgmodule.c:29:

что заголовок libpq-fe.h нигде не находится в пути поиска, если он у вас есть.

Ответ 8

Для Ubuntu 14.04, из изображения Docker python:3.4.3-slim эта комбинация работала для меня:

sudo apt-get update
sudo apt-get install -y build-essential
sudo apt-get install -y python3.4-dev
sudo apt-get install -y libpq-dev

pip3 install psycopg2

Примечание build-essential. Это было важно в моем случае.

Ответ 9

Для меня недостающий пакет был

libpqxx-devel.x86_64

Ответ 10

Это работало для меня на Ubuntu Server 14.10 64-бит:

sudo apt-get install libpqxx-dev

Ответ 11

у меня была эта проблема, но она была решена запуском:

pip install -Iv psycopg2==2.7.7

Возникла проблема с установкой последней версии + python3.7