Create an .exe file from the TASTE GUI python sources

From TASTE
Jump to: navigation, search

Requirements

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. In order to get the sources you need an SVN client for windows (Download and install slik subversion).

How to

Download the PyInstaller zip file from http://www.pyinstaller.org/.

Next, extract the content of the zip file in the desired directory. Then, press Shift + right mouse button in the directory and select Open command window here.

Download the taste GUI code:

C:\PyInstaller>svn export https://tecsvn.estec.esa.int/svn/taste/trunk/misc/experiments /win-gui-draft/tags/debug_release/ tasteGUI

Note: To ease the procedure make sure to add your Python install path to your PATH variable. E.g.: On a Windows 7 machine go to Control Panel\System, on the left pane click on Advanced system settings, then click the Environment Variables... button, select the PATH variable and click the Edit... button. Now add your Python install path at the end of Variable value:. If you installed python on C:\Python27 Variable value: should look something like this:

C:\Whatever\dirs\before;C:\Python27

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\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 associated *.dlls with the minimum size possible 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