Closed gjb1002 closed 5 years ago
How to make an exe file? There seem to be broadly 4 options:
1) exemaker. Used for Python 2 capturemock. Hasn't been updated since 2004 and unsurprisingly doesn't work with Python 3. Suppose porting it is possible but it seems a bit excessive...
2) PyInstaller. Seems to be the tool of choice, but fails utterly on capturemock with an internal error that gets no hits when I google it :( Could always report this and hope for a fix...
3) cx_freeze. Works fine but requires copying the entire Python interpreter. In other words, isn't useful in practice.
4) py2exe. Only seems to handle Python versions up to 3.5, bit of a disadvantage. Hasn't been updated since 2014.
Stack from PyInstaller seems to be caused by the script and the python package both being called "capturemock". Changing the script to be called capturemock_bin.py makes it work. It's then possible to rename afterwards. So that seems to be the way forward.
Now working with help from PyInstaller. All tests green on Windows with Python 3 apart from the xmlrpc ones.
Creating a separate issue for this now. The problem is it is dependent on generating exe files, and the old ones don't work with Python 3. So we have to make new ones somehow.