Create an .exe file from a python script

From TASTE
Jump to: navigation, search

There are lots of alternatives to package a python script to a stand-alone executable. For example: PyInstaller, py2exe, cx_Freeze all offer cross-platform solutions.

To package the Windows TASTE GUI, which uses PySide bindings for Qt to a stand-alone .exe file PyInstaller is used.

The following packages are needed:

All five tools should be installed following the order in which the are presented. These tools can be easily installed as they are bundled as executables.

Finally, you will also need the TASTE GUI python sources to build the executable.

Then,download the PyInstaller zip file from http://www.pyinstaller.org/.

Next, extract the content of the zip file and open a command window in that directory.

Type the following to configure the PyInstaller setup:

C:\PyInstaller> python Configure.py

This will only have to be run once unless you change your python version.

Next, create a spec file for the project:

C:\PyInstaller> python Makespec.py -w --icon=<iconfile.ico> tasteGUI.py

This command will create a spec file .\tasteGUI\tasteGUI.spec that will produce a single directory deployment (use the -F to deploy a single file) that uses the Windows subsystem executable (-w) and adds the iconfile.ico icon.

Finally, build the project to a stand-alone executable:

C:\PyInstaller> python Build.py .\tasteGUI\tasteGUI.spec

The final generated file will be place in the dist directory under .\tasteGUI.

Note: If you want to generate the executable and its associated *.dlls with the minimum size download UPX from http://upx.sourceforge.net/, install it and make sure you add it to your path before you run configure the PyInstaller setup. Then, add the -X option when generating the spec file:

C:\PyInstaller> python Makespec.py -X -w --icon=<iconfile.ico> tasteGUI.py