1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- This example shows how to package a program that uses the PyGI-bindings of Gtk (or PyGObject). Python 3.4.3 64-bit will be used together with 64-bit dependencies.
- The example program conists of a window with a matplotlib-plot and a button that triggers the window to close.
- Requirements
- ------------
- This example needs 7zip in order to work. You can install it for example on
- Debian-style distributions using:
- ::
- sudo apt-get install p7zip
- Building the program
- --------------------
- A shell script can be used to download some of the dependencies:
- ::
- sh 1_download.sh
- The numpy 64-bit wheel can be downloaded here (numpy‑1.9.2+mkl‑cp34‑none‑win_amd64.whl):
- http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
- Rename it to numpy.whl before starting the second script.
- The next script will copy all the dependencies into the ``pynsist_pkgs`` folder.
- ::
- sh 2_extract.sh
- After that, the example can be built using this command:
- ::
- python3 -m nsist installer.cfg
- Installer.cfg
- -------------
- The example uses 64-bit Python 3.4 and 64-bit dependencies. This is expressed in the
- ``installer.cfg``-file like this:
- ::
- version=3.4.3
- bitness=64
- The include section requires the Python packages numpy, matplotlib (which are taken from the ``pynsist_pkgs`` folder). In addition the packages six, dateutil and pyparsing are required. From the pygi-bindings the top level packages cairo, dbus, gi, gnome and pygtkcompat have to be listed here (They are also in the top level of the ``pynsist_pkgs`` directory). The ``gnome``-folder contains the dependencies ATK, Base, GDK, GDKPixbuf, GTK, JPEG, Pango, WebP and TIFF.
- ::
- [Include]
- packages=gi
- cairo
- dbus
- gnome
- pygtkcompat
- numpy
- matplotlib
- six
- dateutil
- pyparsing
|