1

Я некоторое время пользуюсь nixOS, но из Ubuntu мне трудно работать с бинарными зависимостями. Моя проблема в том, что я хочу установить psycopg2 в virtualenv. Этот пакет не является чисто Python, и он ссылается на двоичные файлы Postgres. Поэтому, когда я пытаюсь установить пакет, я получаю:

./psycopg/psycopg.h:31:22: fatal error: libpq-fe.h: No such file or directory

Вопрос в том, как сделать бинарные библиотеки и файлы заголовков доступными для таких локальных установок?

1 ответ1

2

Для разработки на Python я обычно использую комбинацию конфигурации nix-shell и virtualenv .

% nix-shell -p pythonPackages.virtualenv postgresql
(nix-shell) % virtualenv env
(nix-shell) % ./env/bin/pip install psycopg2

Важная часть выше - вы устанавливаете postgresql вместе с virtualenv

Некоторые пакеты, такие как Pillow, делают слишком много предположений о том, где должны быть библиотеки, и вам может понадобиться использовать их непосредственно из pythonPackages .

Вы могли бы также быть заинтересованы в pypi2nix , который может конвертировать файл requirements.txt в Никс выражений. если вы застряли с этим, пожалуйста, напишите мне на IRC, я хотел бы проверить его.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .