Como acessar libs localmente em nixos?

1

Estou usando o nixOS por algum tempo, mas vindo do Ubuntu eu tenho dificuldade com dependências binárias. Meu problema é que eu quero instalar o psycopg2 em um virtualenv. Este pacote não é um puro-python e vincula-se a binários postgres. Então, quando tento instalar o pacote, obtenho:

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

A questão é - como tornar as bibliotecas binárias e os arquivos de cabeçalho disponíveis para instalações locais como essa?

    
por zefciu 16.06.2016 / 19:47

1 resposta

2

Para o desenvolvimento de python, geralmente uso a combinação da configuração nix-shell e virtualenv .

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

A parte importante acima é você instala postgresql ao lado de virtualenv

Alguns pacotes, como o Pillow, fazem muitas suposições onde bibliotecas deveriam estar e você pode precisar usá-lo diretamente de pythonPackages .

Você também pode estar interessado em pypi2nix que pode converter seu arquivo requirements.txt em expressões nix. se você ficar preso a ele por favor ping me no irc, eu adoraria fazer o teste.

    
por 17.06.2016 / 10:11