views:

658

answers:

1

Hi, I'm trying to bundle some egg dependencies when using py2exe and as stated on the py2exe site, it doesn't work with those and I need to unzip them first. I've tried to first run easy_install -m lxml and then easy_install --always-unzip lxml==2.2.2, but it didn't work. Then I tried to set the unzipping behaviour to default by putting it to distutils.cfg. I didn't find the latter file, so I've made the HOME environment variable and created a pydistutils.cfg file there with this content:

[easy_install]
zip_ok = 0

but easy_install still doesn't unpack the eggs. What is the easiest way to get things done?

+1  A: 

Quick hack/workaround: egg files are just zip files, so you can use the python zipfile module to unzip them. Maybe you could rename the easy_install file to "easy_install_pre.exe", and create a new .bat file named "easy_install.bat":

easy_install_pre.exe %1
unzip_eggs.py %1
Ryan Ginstrom
Are you sure they will still work correctly after such manipulations?
roddik
I've unzipped eggs before and used them without problems for the purpose of py2exe. In those cases, I renamed the unzipped file to the package name, and dropped it into my source directory. That said, I use distribute now, and get my egg files unzipped into .egg directories by default.
Ryan Ginstrom