Installation on Woe32 (WinNT/2000/XP, Win95/98/ME): - Requires MS Visual C/C++ 4.0 or 5.0 or 6.0 or 7.0. Note that binaries created with MSVC 7.0 should not be distributed: They depend on a closed-source library 'msvcr70.dll' which is not normally part of a Woe32 installation. You cannot distribute 'msvcr70.dll' with the binaries - this would be a violation of the GPL and of the Microsoft EULA. You can distribute the binaries without including 'msvcr70.dll', but this will cause problems for users that don't have this library on their system. Therefore it is not recommended. This problem does not occur with MSVC 6.0 and earlier. - Cannot build in a separate directory. - Build instructions: Make sure that the MSVC4.0 or MSVC5.0 or MSVC6.0 or MSVC7.0 utilities ("cl" etc.) are found in PATH. In a typical MSVC6.0 installation, this can be achieved by running C:\Program Files\Microsoft Visual Studio\VC98\bin\vcvars32.bat In a typical MSVC7.0 installation, it can be achieved by running C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\vsvars32.bat Decide which compilation model you will use: MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib You need GNU libiconv (version 1.9 or newer) installed under c:\usr. If you haven't yet, build and install GNU libiconv (version 1.9 or newer) using the same MFLAGS. Then come back to here, to build GNU gettext. For shared library (DLL): nmake -f Makefile.msvc DLL=1 MFLAGS=-MD For static library: nmake -f Makefile.msvc MFLAGS=-MD If you want to build both the shared and static library, you have to unpack the gettext sources twice in different directories. Don't mix the two formats; you cannot use the libintl.h generated for the static library together with the shared library or vice versa. Install it: nmake -f Makefile.msvc DLL=1 MFLAGS=-MD install or nmake -f Makefile.msvc MFLAGS=-MD install - Installation: Complete and automatic installation: nmake -f Makefile.msvc DLL=1 MFLAGS=-MD install PREFIX=InstallBaseDirectory or nmake -f Makefile.msvc MFLAGS=-MD install PREFIX=InstallBaseDirectory By default, the compiled package is installed under c:\usr. You can specify a different directory by giving the installation base directory in a PREFIX=... option in the install step. (DON'T give the PREFIX already in the build step! This won't work.) You can also omit the PREFIX=... option, thus installing everything under c:\usr, and then move the installed package as a whole from c:\usr to a different location.