~ubuntu-branches/debian/squeeze/upnp-inspector/squeeze

« back to all changes in this revision

Viewing changes to win32/inspector_build.txt

  • Committer: Bazaar Package Importer
  • Author(s): Charlie Smotherman
  • Date: 2009-07-24 07:13:32 UTC
  • Revision ID: james.westby@ubuntu.com-20090724071332-t9knke5z11s63w0w
Tags: upstream-0.2.2+dfsg
ImportĀ upstreamĀ versionĀ 0.2.2+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
 
 
3
= Windows Build for the UPnP-Inspector=
 
4
 
 
5
== Setting up dependencies ==
 
6
To be able to build the windows installer for the UPnP-Inspector for Windows you need to have some libraries and runtime environment set up.
 
7
 
 
8
=== Python ===
 
9
First of all you will need Python. Take care that the time this was written the UPnP-Inspector (or mostly Coherence) did not work with Python 2.6 or 3k. If this did not change meanwhile, take care to always download Python in the version 2.5 (2.5.3 at the time beeing).
 
10
 
 
11
=== SetupTools ===
 
12
Setuptools is as a strong dependency for coherence and the UPnP-Inspector as well as a runtime dependency for our developtment environment. In any case if you install the python you probably want to have the handy easy_install command anyway. Install setuptools like this if you didn't yet:
 
13
 
 
14
Download the easy_setup.py from
 
15
and run python easy_setup.py from the commandline (maybe you need superuser rights if you aren't a super user yet).
 
16
 
 
17
=== GTK-Runtime ==
 
18
Download and install the GTK-Runtime. Don't you dare to throw away the downloaded installer! We need it later.
 
19
 
 
20
=== Python Bindinds for the runtime ===
 
21
We also need some Python-Bindings for the GTK-Runtime we just installed. In particular we need:
 
22
 * pygtk
 
23
 * pycairo
 
24
 * pygobject
 
25
 
 
26
=== PyWin32 ===
 
27
And last but not least we need pywin32. Don't ask, just install it, damn' it! - no seriously, it will be needed to find the right libraries (like gtk) and run properly.
 
28
 
 
29
== Build Tools ==
 
30
==== bbfreeze ====
 
31
We use the cool bbfreeze project to create our binary of the Inspector. So we need that as well. It is very simple because we have easy_install:
 
32
 
 
33
  easy_install bbfreeze
 
34
 
 
35
=== internal dependencies ===
 
36
 
 
37
==== Twisted ====
 
38
If you have Visual-Studio 2003 you can try to install twisted 8.10.0 with easy_install. I was not able to do that so I recommand to do what I did: download the twisted installer from their website and install it ;) .
 
39
 
 
40
But do it! If you try to install Coherence or UPnP-Inspector before you did that you might fail.
 
41
 
 
42
==== Coherence ====
 
43
To be able to build the Inspector you need Coherence of course. You can simply install it with easy_install:
 
44
 
 
45
  easy_install.exe Coherence
 
46
 
 
47
This will install Coherence and all its python dependencies (dispite twisted as we already installed ;) )
 
48
 
 
49
==== The Net thing ====
 
50
We also need one thing that is optional (as it is only needed for windows)
 
51
 
 
52
STILL NOT SURE IF IT IS NEEDED. WORKED W/O ON MY VISTA.
 
53
 
 
54
== Build ==
 
55
So let's get the build system. That is pretty easy with the following steps:
 
56
 
 
57
=== building the binary ===
 
58
first we need to build the "exe" and corresponding dependencies. that is done by running:
 
59
 
 
60
  python compile.py
 
61
 
 
62
in the commandline. This will create a folder called "build". In this folder you'll find the necessary egg files, bindings for gtk and stuff and most importantly an upnp-inspector.exe file.
 
63
You should be able to run this file directly from the commandline already. If that doesn't work you don't even have to continue ;) .
 
64
 
 
65
=== package the installer === 
 
66
Now we need to package that all together into a nice installer. Take care that the gtk-runtime installer is in the same folder now. It is going to be included in the installer and the packaging will fail if it can't find it.
 
67
 
 
68
Simply do a right-click on the win32.nsi file in the explorere. There should be an entry called "Compile NSIS Script". Click that. Otherwise you can also just start the NSIS-Tool and load the file into it.
 
69
 
 
70
When it is done, you should always press "Test Installer" for a simple smoketest.
 
71
 
 
72
You are done :) . There is now a "UPNPInspector-VERSION-INSTALLERVERSION-setup.exe" in your folder. Share it!
 
73
 
 
74
 
 
75
= Known bugs and todos =
 
76
 - add the icon to the binary
 
77
 - add the icon to the installer
 
78
 - namespace in the installer faulty: UPNPInspector -> UPNP-Inspector
 
79
 - fix up the documentation
 
80
 - remove the py-debug-binary before releasing
 
81
 - uninstaller does not remove start-menu-shortcuts
 
82
 - start-menu-shortcut should not contain version in name
 
83
 
 
84
plans for after the release
 
85
 - talk with the pidgin guys about outsourcing the gtk-installer-part as a NSIS-Plugin because I guess other will need it later as well
 
86
 - clean up installer-compile-warnings
 
87
 - optional gtk-less-installer
 
88
 - outsource coherence to its own installer
 
89