Hi, I am trying to freeze a program that uses the Image module under Windows, using visual studio .net 7.1. I'm having a problem that seems to be a failure to find some module/library/.pyd/.lib file(s).
When I run the resulting executable, it raises an IOError in Image.open, saying "Cannot identify image file." My program sets sys.path, rather than appending to it, so I can distribute all necessary libraries with the executable. This is suggested in the freeze documentation. If I change the code to append to sys.path instead, everything runs fine. So, I assume there is some library or module that it can't find without the standard sys.path, but doesn't complain about not finding. How do I find out what's missing? I didn't find an answer in the freeze or PIL documentation (which doesn't prove it isn't there). More detail, in case it matters: When I run "python <python>\Tools\freeze\freeze.py program.py", early on it prints a path for _imaging.pyd, but near the end it complains with the message "No definition of module _imaging in any specified map file." I gather this is some set of compiler parameters I need to give to freeze. Freeze gives the same complaint for a few other modules. It also says "Warning: unknown modules remain: _imaging ..." I understand this means I need to distribute the .pyd (and .lib?) files with the executable. I set sys.path to point into a lib directory containing those .pyd and .lib files that I can identify, including _imaging.pyd. Indulging in wishful thinking, it seems to build Ok after this with nmake. Clay _______________________________________________ Image-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/image-sig
