如何解压Python eggs?
我在使用py2exe的时候,想把一些egg依赖打包在一起。根据py2exe网站上的说明,它不支持这些egg格式的文件,所以我需要先把它们解压。我尝试先运行 easy_install -m lxml
,然后再运行 easy_install --always-unzip lxml==2.2.2
,但都没成功。接着,我试着通过在 distutils.cfg
文件里设置解压的默认行为来解决这个问题。不过我找不到这个文件,所以我创建了一个 HOME
环境变量,并在里面新建了一个 pydistutils.cfg
文件,内容如下:
[easy_install]
zip_ok = 0
但是easy_install还是没有解压这些egg文件。请问有什么简单的方法可以解决这个问题吗?
2 个回答
0
在重新安装之前,首先要把压缩包文件删除掉。这样就简单多了。
问题中提到的所有解压安装的方法,如果先删除了压缩包,都是可以用的;但是如果不删除,就不行。解压安装后再重新安装压缩包是可以的,只需要正常升级,不用再删除任何东西。这种情况在一些旧版的easy_install中比较常见,大约是在Python 2.5的那个时期。
2
快速的小技巧:egg文件其实就是zip文件,所以你可以用Python的zipfile模块来解压它们。你可以试着把easy_install文件重命名为“easy_install_pre.exe”,然后再创建一个新的.bat文件,命名为“easy_install.bat”:
easy_install_pre.exe %1
unzip_eggs.py %1