将一个可用的python程序分发给一个不使用';你没有安装分发服务器吗?

将一个可用的python程序分发给一个不使用';你没有安装分发服务器吗?,python,windows,software-distribution,distribute,Python,Windows,Software Distribution,Distribute,如何将可用的python程序分发到未安装distribute的python 我使用python setup.py bdist\u wininst创建了一个Windows二进制安装程序。setup.py包含一个控制台脚本入口点,以便根据创建Windows.exe文件并将其放置在目标计算机上的%python%\Scripts中 但是,在安装了virgin python的计算机上运行已安装的脚本会产生: D:\Py3.2.5> scripts\foo.exe Traceback (most re

如何将可用的python程序分发到未安装distribute的python

我使用
python setup.py bdist\u wininst
创建了一个Windows二进制安装程序。setup.py包含一个控制台脚本入口点,以便根据创建Windows.exe文件并将其放置在目标计算机上的
%python%\Scripts

但是,在安装了virgin python的计算机上运行已安装的脚本会产生:

D:\Py3.2.5> scripts\foo.exe
Traceback (most recent call last):
  File "D:\Py3.2.5\scripts\foo-script.py", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
D:\Py3.2.5>scripts\foo.exe
回溯(最近一次呼叫最后一次):
文件“D:\Py3.2.5\scripts\foo script.py”,第5行,在
从打包资源导入加载入口点
ImportError:没有名为pkg_资源的模块
告诉我此错误是因为未安装

如何让我的安装程序包含Distribute,这样我就不必告诉用户“在安装我们的程序之前,您必须先安装另一个程序”?

啊,最后:

用户的计算机上可能没有安装setuptools,或者 即使他们这样做了,也可能不是正确的版本。解决这个问题很重要 容易的;只需下载
distribution\u setup.py
,并将其放在同一个文件夹中即可 目录作为setup.py脚本。(请务必将其添加到您的修订版中 然后将这两条线添加到最顶端 设置脚本,在脚本从设置工具导入任何内容之前:

import distribute_setup
distribute_setup.use_setuptools()
就这样。distribute_设置模块将自动下载 匹配PyPI中的setuptools版本(如果在 目标系统。无论何时安装更新版本的setuptools, 您还应该更新项目的distribute_setup.py文件,以便 在目标计算机上安装匹配的版本


为什么不使用py安装程序或py2exe将所有依赖项捆绑到一个可运行的exe@joran,我也将这样做,作为未来的一个阶段,但我不想强迫人们安装一个重复的python,如果他们已经有了一个,特别是因为有些人想要3.x,而另一些人想要2.x。