Merge branch 'master' of ssh://69.25.196.28:822/srv/git/moonshot-ui
[moonshot-ui.git] / README.windows
1 How to compile moonshot-ui from git on MS Windows using mingw and MSYS
2 ----------------------------------------------------------------------
3
4 I recommend you set up a build environment according to the following page:
5
6   http://afuera.me.uk/jhbuild-windows/
7
8 However, use the configuration file in the source tree at ./windows/jhbuildrc
9 instead of creating a new one. You can tell jhbuild to use that file by running
10
11   jhbuild -f jhbuildrc <...>
12
13 You will also need to install the following extras:
14
15   * MS Windows Platform SDK v7.0 and .NET framework 3.5:
16
17       https://www.microsoft.com/downloads/en/details.aspx?FamilyID=c17ba869-9671-4330-a63e-1fd44e0e2505&displaylang=en
18
19     You need the 'Win32 Developer Tools' component for MIDL.EXE, the rest are
20     not important.
21
22   * Windows Installer XML 3.5:
23
24       http://wix.codeplex.com/releases/view/60102
25
26   * ImageMagick (for converting .svg icons to .png in 'make icons'):
27
28      http://www.imagemagick.org/download/binaries/ImageMagick-6.6.9-10-Q16-windows-dll.exe
29
30 I suggest you put all these things in their default locations, the installers
31 seem to mostly ignore attempts to install them in other places.
32
33 You currently also need a patched version of the w32api mingw package, to
34 expose some RPC functions. This is on the mingw issue tracker here:
35
36   https://sourceforge.net/tracker/?func=detail&aid=3302807&group_id=2435&atid=302435
37
38 Until the fix gets merged, download the following patched version and simply
39 extract into c:\tools\mingw:
40
41   http://afuera.me.uk/junk/w32api-3.17-2-mingw-patch3302807-dev.tar.lzma
42
43 (Alternately you can fetch the source for the w32api package from
44  www.sourceforge.net/projects/mingw and apply the patch yourself)
45
46 You will need to compile and install the msrpc-mingw package, which wraps
47 MIDL.EXE and the RPC API to make it usable from gcc.
48
49   git clone git://github.com/ssssam/msrpc-mingw.git
50   cd msrpc-mingw
51   MIDL=/c/Program\ Files/Microsoft SDKs/Windows/v7.0/bin/MIDL.exe ./waf configure --prefix=c:/build
52   ./waf
53   ./waf install
54
55 You can then build moonshot from the MSYS shell:
56
57   ACLOCAL="aclocal -I/c/build/share/aclocal" PKG_CONFIG_PATH=/c/build/lib/pkgconfig \
58   ./autogen.sh --disable-maintainer-mode
59   make
60   make icons
61   make installer
62
63
64 Weird things that might go wrong
65 --------------------------------
66
67 MSYS is a little fragile, here are some things to try if you get weird failures
68 of any component:
69
70 # Make sure your PATH looks like this:
71 #   /c/build/bin:/c/tools/python:/usr/local/bin:/mingw/bin:/bin
72 # so that there are no entries before these that might override a shell tool.
73
74 # Sometimes TMP is set and this breaks some of the tools
75 export TMP=