如何在 nixos 中本地访问库?

如何在 nixos 中本地访问库?

我使用 nixOS 已有一段时间了,但从 Ubuntu 转过来后,我遇到了二进制依赖问题。我的问题是我想在虚拟环境中安装 psycopg2。这个包不是纯 Python 包,它链接到 postgres 二进制文件。因此,当我尝试安装包时,我得到了:

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

问题是 - 如何使二进制库和头文件可用于这样的本地安装?

答案1

对于python开发我通常使用nix-shellvirtualenv配置的组合。

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

上面的重要部分是你postgresql与 virtualenv 一起安装

一些软件包,例如 Pillow,对库的位置做出了太多假设,您可能需要pythonPackages直接使用它。

您可能还感兴趣pypi2nix它能将您的requirements.txt文件转换为 nix 表达式。如果您遇到问题,请在 irc 上联系我,我很乐意对它进行测试。

相关内容