使用PyPI + OS级依赖项打包Python应用程序

cja*_*vin 6 python packaging pip pypi

我想为PyPI打包一个Python科学应用程序.我的问题是,它依靠的PyPI级DEPS(如numpy的,SciPy的等)以及其他必须在操作系统级别的处理:wxPython的和Python-VTK(如在Ubuntu apt-get的,自制的OSX等).

我想知道这样做的理想策略是什么,特别是哪种包装系统最适合(我目前偏爱Distribute).

Mar*_*ers 3

distributesetuptools是一个具有更好文档的分支。您基本上有distutils(stdlib) 和setuptools作为您的选择。由于distutils不允许您指定依赖项,因此setuptools只剩下依赖项。

通常,您会列出所有依赖项,并清楚地记录安装过程(包括推送到 PyPI 的 long_description 字段)。包括操作系统级安装的软件包,大多数发行版在安装这些软件包时都包括 Egg 信息。