mirror of
https://github.com/darlinghq/darling-libiconv.git
synced 2024-11-23 04:30:07 +00:00
c047ea56be
Source is based on libiconv-59
120 lines
4.8 KiB
Plaintext
120 lines
4.8 KiB
Plaintext
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.
|