分发大型支持Python的应用程序:最佳实践

时间:2011-09-15 08:32:43

标签: python distribution setuptools

有一个庞大的Python应用程序,包含许多第三方软件包和二进制库。以下是我的要求概述:

  • 跨平台(目前是Windows和现代Linux发行版)
  • 安装批次(比如说> 100 MB)的二进制库(Windows上的DLL)
  • 安装第三方Python软件包(其中一些不能使用easy_install等工具在Windows上安装)
  • 安装所需的Visual Studio可再发行组件包
  • 如果可能,保留我的包裹的文件布局(没有压缩鸡蛋)
  • 删除所有包和库的明确方法
  • 分发测试套件(在我的情况下为py.test
  • 无源分发选项(.pyc - 仅限)

应用程序应该是“可移植的”,至少作为Python包(可以使用VirtualEnv安装在任何地方)。

我的选择是什么?我应该坚持setuptoolsdistribute)吗?我应该推出自定义安装程序吗?

正在开发的应用程序是专有的,但它为开发人员提供了Python API,我希望它看起来和感觉尽可能的pythonish和hackerish。

1 个答案:

答案 0 :(得分:1)

Py2Exe可以完成大部分先决条件和依赖项,删除和额外的安装/卸载,您可以使用任何msi安装程序创建者。