blob: 7d68110bdd080c4e690d844900f85030144d23de [file] [log] [blame]
Building with Visual C++, prerequises
This document describes how to compile, build and install curl and libcurl
from sources using the Visual C++ build tool. To build with VC++, you will
of course have to first install VC++. The minimum required version of
VC is 6 (part of Visual Studio 6). However using a more recent version like
2008 (vc9) is strongly recommended.
VC++ is also part of the Windows Platform SDK. You do not have to install
the full Visual Studio or Visual C++ if all you want is to build curl.
The Platform SDK can be fetched here, freely:
If you wish to support zlib, openssl, ssh2, you will have to download
them separately and copy them to the deps directory as shown below:
| |_winbuild
|_ lib
|_ include
|_ bin
It is also possible to create the deps directory in some other random
places and tell the Makefile its location using the WITH_DEVEL option.
Building with Visual C++
Open a Visual Studio Command prompt or the SDK CMD shell.
Using the CMD Shell:
choose the right environment via the setenv command (see setenv /?)
for the full list of options. setenv /xp /x86 /release for example.
Using the Visual Studio command prompt Shell:
Everything is already pre-configured by calling one of the command
Once you are in the console, go to the winbuild directory in the Curl
cd curl-src\winbuild
Then you can call nmake /f makefile with the desired options (see below).
The builds will be in the top src directory, builds\ directory, in
a directory named using the options given to the nmake call.
nmake /f mode=<static or dll> <options>
where <options> is one or many of:
VC=<6,7,8,9,10> - VC versions
WITH_DEVEL=<path> - Paths for the development files (SSL, zlib, etc.)
Default to sibbling directory deps: ../deps
Libraries can be fetched at
Uncompress them into the deps folder.
WITH_SSL=<dll or static> - Enable OpenSSL support, DLL or static
WITH_ZLIB=<dll or static> - Enable ZLib support, DLL or static
WITH_SSH2=<dll or static> - Enable LIbSSH2 support, DLL or static
USE_SSSPI=<yes or no> - Enable SSPI support, default to yes
USE_IPV6=<yes or no> - Enable IPV6, default to yes
DEBUG=<yes or no> - Debug builds
USE_IDN=<yes or no> - Wheter or not to use IDN Windows APIs. Requires Windows Vista or later.
or to install
GEN_PDB=<yes or no> - Generate Program Database (debug symbols release build)