]> Pileus Git - ~andy/gtk/blob - README.win32
Updates.
[~andy/gtk] / README.win32
1 The Win32 port of GTK+ is a work in progress, and not as stable or
2 correct as the Unix/X11 version. For more information about the Win32
3 port, see http://www.gimp.org/win32/ .
4
5 This (CVS HEAD) version of the Win32 backend does *not* necessarily
6 even compile properly. There is a gtk-1-3-win32-production branch that
7 was branched off from before the addition of the no-flicker and other
8 recent functionality. That is what should be used by "production" code
9 until the CVS HEAD version is useable. (But note, the Win32 backend
10 has never been claimed to be "production quality", although it works
11 surprisingly well for the GIMP.)
12
13 There are two ways to build GTK+ for win32:
14
15 1) Use the autoconf-generated configure script, and the resulting
16 Makefiles (which use libtool and gcc to do the compilation). I use
17 this myself, but it might be hell to setup correctly. 
18
19 2) Use the Microsoft compiler, cl and Make, nmake. Say nmake -f
20 makefile.msc in gdk and gtk.
21
22 Alternative 1 also generates Microsoft import libraries (.lib), if you
23 have lib.exe available. It should also work for cross-compilation from
24 Unix.
25
26 There are hand-written makefiles for mingw (look for makefile.mingw in
27 various directories), but those haven't been kept up-to-date, and
28 probably won't work without editing. Sorry. If you make them work
29 again, by all means do submit patches.
30
31 Note that I use mainly gcc myself, and thus the build setup for
32 Microsoft's nmake and cl might be a bit rusty. Hans Breuer has been
33 taking care of those makefiles. At times, we disagree a bit, and the
34 msc makefiles might not produce compatible or identically named DLLs
35 and import libraries as the autoconfiscated makefiles and libtool do.
36
37 To use GTK+ on Win32, you also need either one of the above mentioned
38 compilers. Other compilers might work, but don't count on it. The same
39 instructions on how to set up a correct version of gcc should also be
40 followed if you want to build applications that use GTk+ with gcc. For
41 prebuilt developer packages (DLLs, import libraries, headers), see the
42 above website.
43
44 The tablet support uses the Wintab API. The Wintab development kit can
45 be downloaded from http://www.pointing.com. Pass the --with-wintab
46 flag to configure if you use that. If you use nmake and you don't care
47 for Wintab, undefine HAVE_WINTAB in config.h.win32 and remove
48 references to the wntab32x library from the makefile before building.
49
50 GTK wants to be built with the GNU "intl" library for
51 internationalisation (i18n). Get the version ported to Win32 (not a
52 very big deal) from the web site mentioned above. The "intl" library
53 as gets built as a DLL called libintl-1.dll. If you don't want any
54 i18n stuff, undefine ENABLE_NLS, HAVE_GETTEXT and HAVE_LIBINTL in the
55 config.h.win32 file, and remove references to the intl library from
56 the makefiles.
57
58 Note that while the GNU gettext package is under the GPL, the "intl"
59 part of it is under the LGPL (like GTK or GLib), as of
60 gettext-0.10.40.
61
62 --Tor Lillqvist <tml@iki.fi>