blob: d3845572604e07d3c1429863c40efb4ece284c6b [file] [log] [blame]
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
Step 1: Build and install the libiconv library and the iconv.exe program
without internationalization. (This step is only needed the first time
you install GNU libiconv.)
For shared library (DLL):
nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD
or
nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD check
[This runs the testsuite.]
For static library:
nmake -f Makefile.msvc NO_NLS=1 MFLAGS=-MD
or
nmake -f Makefile.msvc NO_NLS=1 MFLAGS=-MD check
[This runs the testsuite.]
If you want to build both the shared and static library, you have to
unpack the libiconv sources twice in different directories. Don't mix
the two formats; you cannot use the iconv.h generated for the static
library together with the shared library or vice versa.
Install it:
nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD install
or
nmake -f Makefile.msvc NO_NLS=1 MFLAGS=-MD install
Remove traces of this preliminary build:
nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD distclean
or
nmake -f Makefile.msvc NO_NLS=1 MFLAGS=-MD distclean
Step 2: Build and install the GNU gettext package (version 0.12 or newer,
libintl library and various programs) using the same MFLAGS. Then come
back to here, to build GNU libiconv. (This step is only needed if you
haven't GNU gettext already installed.)
Step 3: Build and install the libiconv library and the iconv.exe program
with internationalization.
For shared library (DLL):
nmake -f Makefile.msvc DLL=1 MFLAGS=-MD
or
nmake -f Makefile.msvc DLL=1 MFLAGS=-MD check
[This runs the testsuite.]
For static library:
nmake -f Makefile.msvc MFLAGS=-MD
or
nmake -f Makefile.msvc MFLAGS=-MD check [This runs the testsuite.]
If you want to build both the shared and static library, you have to
unpack the libiconv sources twice in different directories. Don't mix
the two formats; you cannot use the iconv.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:
Manual minimal installation:
Copy include/iconv.h to your header file repository.
Copy lib/iconv.lib to your library repository.
If you built for shared library, also copy lib/iconv.dll into one of
the directories listed in your PATH, or into the directory containing
the executable which shall make use of libiconv.
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.