2010-01-07 39 views
3

我试图捆绑一些鸡蛋依赖py2exe和py2exe网站上所述,它不适用于那些,我需要先解压缩它们。我试着先运行easy_install -m lxml,然后easy_install --always-unzip lxml==2.2.2,但它没有奏效。然后我尝试将解压缩行为设置为默认值distutils.cfg。我没有找到第二个文件,所以我做了HOME环境变量与此内容创建一个pydistutils.cfg文件有:如何解压Python的鸡蛋?

[easy_install] 
zip_ok = 0 

但easy_install的仍然没有解开的蛋。完成任务的最简单方法是什么?

+0

没有理由解压缩选项不应该工作,除非你错误输入。尝试使用'-Z'版本的选项,而不是...你确定它实际上没有正确解压缩?检查easy-install.pth以查看实际存在的条目。 lxml鸡蛋文件被标记为“不可压缩安全”,因此无论如何它都不能作为鸡蛋安装。 – 2010-03-18 01:22:48

回答

2

快速入侵/解决方法:egg文件只是zip文件,因此您可以使用python zipfile模块将其解压缩。也许你可以重命名的easy_install文件“easy_install_pre.exe”,并创建一个名为“easy_install.bat”一个新的.bat文件:

easy_install_pre.exe %1 
unzip_eggs.py %1 
+0

你确定他们在这样的操作后仍能正常工作吗? – Fluffy 2010-01-07 13:28:16

+1

我之前解压过鸡蛋,并且没有问题地用于py2exe。在这些情况下,我将解压缩后的文件重命名为包名,并将其放到我的源目录中。也就是说,我现在使用发布,并且默认情况下将我的egg文件解压缩到.egg目录中。 – 2010-01-07 15:53:38

0

的zippped包文件应该是重新安装之前,首先取下。那很简单。

问题中描述的解压缩安装的所有方法应该工作,如果压缩包首先被移除,但没有它的话不起作用。解压缩安装后重新安装压缩包相反可以通过正常升级而不需要移除任何东西。这对于一些与Python 2.5相关的老版本的easy_install版本来说是很典型的。