2012-01-13 133 views
4

我目前正在使用Python Image Library编写一个简单的Python(2.7)程序。如何使我的程序可移植,以便可以在另一台计算机上运行(尚未安装PIL)。在Python中使用第三方库

我研究过创建setup.py文件,但我不确定这是否在正确的轨道上。

+0

这取决于您的目标平台,以及您希望安装故事的样子。 setup.py可以用来指定依赖关系,但它确实用于向其他开发者分发内容;你的用户需要运行'python setup.py install',然后下载并安装PIL。但是,如果你想分发一个包含所有依赖的文件,它会变得更加复杂(例如,你基本上会分发一个Python解释器和stdlib的副本,再加上你的程序,再加上任何依赖)。 – AdamKG 2012-01-13 11:58:35

+0

什么操作系统?如果它是一些Linux,你可能想要创建一个包,让发行版的包管理器负责依赖。 – 2012-01-13 11:59:27

+0

理想情况下,Windows(7)和Ubuntu,认为如果这太雄心勃勃,我会解决其中一个或另一个 – Landric 2012-01-13 12:04:08

回答

3

OK,听起来像setup.py是去这里的正确的方式 - 你应该已经有一个设置()函数中,添加一个install_requires项,像这样:

setup(
    name="mypkg", version="0.0.1", 
    # etc etc blah blah blabh 
    install_requires=["PIL"], 
) 

应该这样做!当您的用户运行setup.py install时,它会下载PIL &运行PIL自己的安装例程。

+0

男人,这一切都有它吗?当我到达工作站时,我会测试这个,但现在,感谢您的回答 – Landric 2012-01-13 14:07:48

+0

这给了我'用户警告:未知分发选项:'install_requires'' – Landric 2012-01-22 14:44:03

+1

您的setup()是distutils还是setuptools?它应该是setuptools。你还可以用'import setuptools来检查你的setuptools版本; setuptools的.__ version__'? – AdamKG 2012-01-23 12:09:03