cloudmatrix / esky

an auto-update framework for frozen python apps
BSD 3-Clause "New" or "Revised" License
362 stars 74 forks source link

Esky not building package with dependencies on windows. #86

Closed F483 closed 6 years ago

F483 commented 9 years ago

I'm trying to get the simplest example from the tutorial to work. https://github.com/cloudmatrix/esky/tree/master/tutorial/stage1

My environment:

Z:\share_space\esky-master\tutorial\stage1>python --version
Python 3.4.3

Z:\share_space\esky-master\tutorial\stage1>pip freeze
...
cx-Freeze==4.3.4
esky==0.9.8
py2exe==0.9.2.2
...

When run using py2exe as the freezer, it fails to find the py2exe module for some reason (though freezing other apps with "python setup.py py2exe" works just fine).

Z:\share_space\esky-master\tutorial\stage1>python setup.py bdist_esky
running bdist_esky
Traceback (most recent call last):
  File "setup.py", line 17, in <module>
    "freezer_module":"py2exe",
  File "C:\Python34\lib\distutils\core.py", line 148, in setup
    dist.run_commands()
  File "C:\Python34\lib\distutils\dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "C:\Python34\lib\distutils\dist.py", line 973, in run_command
    cmd_obj.ensure_finalized()
  File "C:\Python34\lib\distutils\cmd.py", line 107, in ensure_finalized
    self.finalize_options()
  File "C:\Python34\lib\site-packages\esky\bdist_esky\__init__.py", line 291, in
 finalize_options
    raise RuntimeError(err)
RuntimeError: freezer module not found: 'py2exe'

With cx-Freeze building the package works well but running the executable fails.

Z:\share_space\esky-master\tutorial\stage1>dist\example-app-0.1.win32\example.ex
e
ValueError: bad marshal data (unknown type code)
Fatal Python error: unable to locate initialization module

Current thread 0x00001254 (most recent call first):
F483 commented 9 years ago

I do indeed have RandomIO installed as you can see in the output of pip freeze above.

If it is working for you I would like to know the exact setup you have, so I can replicate it. Could you please post your output for python --version, pip --freeze and what version of windows you are using.

timeyyy commented 9 years ago

i deleted the repo after it ran but i'm guessing even though pypi projects are case insensitive it's somehow playing a roll here, pip freeze gives me

RandomIO==0.2.1

try installing the package as RandomIO

im using python3.4.3 windows 7 pip 7

F483 commented 9 years ago

I just setup a Windows 7 VM and tried building it there. I was successful, but only after I uninstallded randomio (was automatically installed dependency via python setup.py develop) and installed it manually with pip install RandomIO. Why the dependency is listed in a different case or why it should even matter I do not know. I also used cx-Freeze so I'm not sure about the status of py2exe, maybe I will try it and report back.

I suggest the following:

rfk commented 6 years ago

Thanks for reaching out. Unfortunately this project is no longer actively maintained, so I'm going to move it into archive mode:

https://rfk.id.au/blog/entry/archiving-open-source-projects/