Как установить psycopg2 в виртуальное окружение на ubuntu?
Не получается установить psycopg2 для работы с Postgresql в Django. Есть виртуальное окружение с python 3.4, команда pip install psycopg2 выдает You need to install postgresql-server-dev-X.Y. for building server-side extension or libpq-dev for building a client-side application.
Попробовала, как рекомендуют, ввести sudo apt-get install libpq-dev, вроде как он поможет, но у меня эта вещь не устанавливается, находит кучу неудовлетворенных зависимостей, и пишет, что невозможно исправить, у вас, мол, битые пакеты. Пытаюсь установить их вручную, он опять какие-то зависимости находит неудовлетворенные, до бесконечности.
Про postgresql-server-dev ничего нигде не встречала, но команда sudo apt-get install postgres-server-dev-X.Y не подходит.
Я недавно в ubuntu работаю, новичок, до этого миллион лет сидела под Windows, у меня уже мозги набекрень :) ubuntu, кстати, 14.04.3
sudo apt-get update
установите зависимости PostgreSQL (для его работы с Django)
sudo apt-get install libpq-dev python-dev
установите PostgreSQL:
sudo apt-get install postgresql postgresql-contrib
далее для Django:
pip install psycopg2(из папки проекта)
postgres я уже установила, какой командой, правда, не помню уже, много их было :) создала проект джанго, в виртуальной среде, а вот psycopg2 там не устанавливается. Проблема, как я поняла, в libpq-dev, который почему-то не хочет устанавливаться. За статью спасибо, мне многое еще предстоит прояснить
demieno@development:~$ sudo apt-get install libpq-dev
[sudo] пароль для demieno:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
linux-headers-4.2.0-16 linux-headers-4.2.0-16-generic linux-headers-4.2.0-25 linux-headers-4.2.0-25-generic linux-image-4.2.0-16-generic
linux-image-4.2.0-25-generic linux-image-extra-4.2.0-16-generic linux-image-extra-4.2.0-25-generic
Для их удаления используйте «apt-get autoremove».
Будут установлены следующие дополнительные пакеты:
comerr-dev krb5-multidev libgssrpc4 libkadm5clnt-mit9 libkadm5srv-mit9 libkdb5-8 libpq5
Предлагаемые пакеты:
doc-base krb5-doc krb5-user postgresql-doc-9.4
НОВЫЕ пакеты, которые будут установлены:
comerr-dev krb5-multidev libgssrpc4 libkadm5clnt-mit9 libkadm5srv-mit9 libkdb5-8 libpq-dev libpq5
обновлено 0, установлено 8 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 549 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 2.812 kB.
Хотите продолжить? [Д/н]
ihorgorobets: libpq-dev все-таки установила, через aptitude
но psycopg2 все равно не устанавливается, потому что
./psycopg/psycopg.h:30:20: fatal error: Python.h: Нет такого файла или каталога
#include
^
compilation terminated.
error: command 'i686-linux-gnu-gcc' failed with exit status 1
----------------------------------------
Cleaning up...
Command /home/irina/python_projects/postgre_test/env/bin/python3 -c "import setuptools, tokenize;__file__='/home/irina/python_projects/postgre_test/env/build/psycopg2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ydlbjpsy-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/irina/python_projects/postgre_test/env/include/site/python3.4 failed with error code 1 in /home/irina/python_projects/postgre_test/env/build/psycopg2
Storing debug log for failure in /home/irina/.pip/pip.log
Для этого пишут, что мне нужен python-dev, а он у меня итак установлен!
Дмитрий: через apt-get у меня таки не получалось, установила через aptitude
но psycopg2 все равно не устанавливается, потому что
./psycopg/psycopg.h:30:20: fatal error: Python.h: Нет такого файла или каталога
#include
^
compilation terminated.
error: command 'i686-linux-gnu-gcc' failed with exit status 1
----------------------------------------
Cleaning up...
Command /home/irina/python_projects/postgre_test/env/bin/python3 -c "import setuptools, tokenize;__file__='/home/irina/python_projects/postgre_test/env/build/psycopg2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ydlbjpsy-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/irina/python_projects/postgre_test/env/include/site/python3.4 failed with error code 1 in /home/irina/python_projects/postgre_test/env/build/psycopg2
Storing debug log for failure in /home/irina/.pip/pip.log
Для этого пишут, что мне нужен python-dev, а он у меня итак установлен!