For more information about the port or GLib, GTk+ and the GIMP to
native Windows, and pre-built binary packages, see
http://www.gimp.org/win32/ or http://www.iki.fi/tml/gimp/win32/ .

To build the GIMP on Win32, you can use either gcc or Microsoft Visual
C++. The gcc to use should be for a mingw configuration (producing
executables that don't use the cygwin dll). For more information about
the preparation necessary for building with gcc, what version you want
and where to get it, etc, read README.win32 in GLib 1.3 (or
later). (GLib 1.3 is the developer version and thus isn't distributed
per se, but available from CVS, and especially for Windows in zipfiles
from the web pages mentioned above.)

Unfortunately the makefiles for MSVC aren't quite up-to-date. You will
have to modify them a bit if you want to use MSVC. But quite possibly
by the time you read this somebody might have contributes new
makefiles, or even project files.

The GIMP wants to be built with the GNU "intl" library for
internationalisation (i18n). Get the version ported to Win32 from the
web site mentioned above. We build the "intl" library to a DLL called
gnu-intl.dll to reduce name clash risks. If you don't want any i18n
stuff, undefine ENABLE_NLS in the config.h.win32 file, and remove
references to the gnu-intl library from the makefiles.

Note that while the GNU gettext package is under the GPL (GNU General
Public License), the "intl" library part as distributed with GNU libc
is under the LGPL (GNU Lesser General Public License, a.k.a. GNU
Library General Public License). We want the LGPL-licensed version of
the intl library, even if they are the same source code, more or
less. It doesn't matter for the GIMP which itself is licensed under
the GPL, but it does matter for GTk+, which is licensed under the
LGPL.

First, build in the libgimp directory, then in app, plug-ins, and
finally in modules. Check the makefile.mingw files in said
directories.

The current build setup for Windows is a mess, with complex
hand-maintained makefiles. I know. On the other hand, I don't think
using the Unix style configuration mechanism to generate mingw EXEs
and DLLs is quite feasible, either. I would love to be proved wrong.

--Tor Lillqvist <tml@iki.fi>
