【问题标题】:Python pip how to handle third party dependenciesPython pip如何处理第三方依赖
【发布时间】:2014-01-15 09:54:57
【问题描述】:

我正在开发一个安装在virtual-env 中的python 模块。该模块依赖于第三方 python 模块,例如 pandas、matplotlib 等,它们自己依赖于非 python 包进行编译。

我的 setup.py 看起来像这样

config = {
          'packages': ['name'],
          'install_requires': ['numpy',
                               'pandas',
                               'cython',
                               'matplotlib',
                              ],
          'name': 'name',
         }
setup(**config)

我目前的工作流程是 pip install 包并等待编译错误并手动安装缺少的依赖项。但是,如果我将模块提供给我的同事,这可能会让人头疼。

有没有办法告诉 pip 安装非 python 依赖项,比如

'external_requires': ['gcc',
                     ],

'external_install':  ['apt-get install']

或调用安装脚本?什么是最佳做法?

【问题讨论】:

    标签: python pip


    【解决方案1】:

    最佳实践取决于目标受众,但因为

    • apt-get 专用于 Debian/Ubuntu 及其衍生产品
    • 需要超级用户权限
    • 软件包名称往往会因版本而异

    和 终于

    • 包可能会发生冲突,我倾向于将这些内容放在自述文件中而不是脚本中。

    【讨论】:

    • README 文件的问题在于,它们被忽略了,因为我的同事们宁可打扰我 ;)
    • @greole 那么也许是时候在他们上门之前教他们 RTFM 了。
    猜你喜欢
    • 2019-05-30
    • 1970-01-01
    • 2021-08-27
    • 2011-04-01
    • 2016-03-20
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多