Python 将psycopg2添加到dev的安装程序

Python 将psycopg2添加到dev的安装程序,python,python-3.x,pip,psycopg2,packaging,Python,Python 3.x,Pip,Psycopg2,Packaging,我如何运行pip安装我的python包以便它可以使用psycopg2 由于与可能产生SEGFULT问题的库冲突,目前不允许使用psycopg2二进制文件 这既适用于Ubuntu上的部署,也适用于Mac或Windows上的开发。 因此,我需要生产脚本的部署能够正常工作,并且在开发人员运行时: pip install -e '.[dev]' 这应该为地方发展创造环境 是否可以在本地开发环境中设置拦截逻辑,并为开发人员机器安装libpq-dev和python3-dev 或者有没有关于Docker内部

我如何运行pip安装我的python包以便它可以使用psycopg2

由于与可能产生SEGFULT问题的库冲突,目前不允许使用psycopg2二进制文件

这既适用于Ubuntu上的部署,也适用于Mac或Windows上的开发。 因此,我需要生产脚本的部署能够正常工作,并且在开发人员运行时:

pip install -e '.[dev]'
这应该为地方发展创造环境

是否可以在本地开发环境中设置拦截逻辑,并为开发人员机器安装libpq-dev和python3-dev

或者有没有关于Docker内部开发的提示

    install_requires=[  # library for production
        ...,
        'psycopg2==2.8.*',
        ...
    ],
    extras_require={
        'dev': [
         ...
        ],  # custom library for development

不可靠的Docker映像需要libpq开发和python3开发。

那么这里有什么问题?如果用于构建psycopg2的开发库在开发人员机器上可用,那么事情应该会很顺利,而不是在开发人员机器上安装依赖项的附加步骤。无法将libpq dev添加为附加依赖项,因为它是二进制文件,无法安装pip,而且安装需要在额外的安装之前运行。为了让shell脚本在安装之前运行,仍然存在解决Windows/Mac(自制)问题的方法Windows/Mac问题可以通过自定义PyPI索引来解决,在该索引中,您已经为开发人员的平台预先构建了控制盘(以及
pip--find links
)。另一个可能的解决方案是自述文件。。。