#125 Cannot build any package using zope.interface

open
nobody
None
5
2014-08-16
2011-10-19
Jason Heeris
No

I have a Python 2.6 app based on Twisted (11.0.0) and PyGTK (2.24). Twisted itself depends on zope.interface, and I don't import it directly.

After building my app with py2exe 6.6.9, when I try to run my app, the following error ends up in the error log:

Traceback (most recent call last):
File "tasks.py", line 4, in <module>
File "ui\__init__.pyc", line 14, in <module>
File "twisted\python\log.pyc", line 17, in <module>
ImportError: No module named zope.interface

I've tried adding every combination of zope.interface and zope to INCLUDES and PACKAGES, but doing so only gives me this build time error:

running py2exe
*** searching for required modules ***
C:\Python26\lib\site-packages\py2exe\build_exe.py:16: DeprecationWarning: the sets module is deprecated
import sets
Traceback (most recent call last):
File "setup.py", line 75, in <module>
'gtk/*.ui'
File "C:\Python26\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\Python26\lib\distutils\dist.py", line 975, in run_commands
self.run_command(cmd)
File "C:\Python26\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "C:\Python26\lib\site-packages\py2exe\build_exe.py", line 243, in run
self._run()
File "C:\Python26\lib\site-packages\py2exe\build_exe.py", line 296, in _run
self.find_needed_modules(mf, required_files, required_modules)
File "C:\Python26\lib\site-packages\py2exe\build_exe.py", line 1306, in find_needed_modules
mf.import_hook(f)
File "C:\Python26\lib\site-packages\py2exe\mf.py", line 719, in import_hook
return Base.import_hook(self,name,caller,fromlist,level)
File "C:\Python26\lib\site-packages\py2exe\mf.py", line 136, in import_hook
q, tail = self.find_head_package(parent, name)
File "C:\Python26\lib\site-packages\py2exe\mf.py", line 204, in find_head_package
raise ImportError, "No module named " + qname
ImportError: No module named zope

My setup.py is attached.

According to a StackOverflow answer, to work around this I need to directly hack up the zope.interface package itself to get it to work with py2exe.

Discussion

  • Jason Heeris
    Jason Heeris
    2011-10-19

    Build script

     
    Attachments