tizen 2.3.1 release
[external/curl.git] / winbuild / BUILD.WINDOWS.txt
1 Building with Visual C++, prerequises\r
2 =====================================\r
3 \r
4    This document describes how to compile, build and install curl and libcurl\r
5    from sources using the Visual C++ build tool. To build with VC++, you will\r
6    of course have to first install VC++. The minimum required version of\r
7    VC is 6 (part of Visual Studio 6). However using a more recent version is\r
8    strongly recommended.\r
9 \r
10    VC++ is also part of the Windows Platform SDK. You do not have to install\r
11    the full Visual Studio or Visual C++ if all you want is to build curl.\r
12 \r
13    The latest Platform SDK can be downloaded freely from:\r
14 \r
15     http://msdn.microsoft.com/en-us/windows/bb980924\r
16 \r
17    If you are building with VC6 then you will also need the February 2003\r
18    Edition of the Platform SDK which can be downloaded from:\r
19 \r
20     http://www.microsoft.com/en-us/download/details.aspx?id=12261\r
21 \r
22    If you wish to support zlib, openssl, c-ares, ssh2, you will have to download\r
23    them separately and copy them to the deps directory as shown below:\r
24    \r
25    somedirectory\\r
26     |_curl-src\r
27     | |_winbuild\r
28     |\r
29     |_deps\r
30       |_ lib\r
31       |_ include\r
32       |_ bin\r
33 \r
34    It is also possible to create the deps directory in some other random\r
35    places and tell the Makefile its location using the WITH_DEVEL option.\r
36 \r
37 Building with Visual C++\r
38 ========================\r
39 \r
40 Open a Visual Studio Command prompt or the SDK CMD shell.\r
41 \r
42     Using the CMD Shell:\r
43      choose the right environment via the setenv command (see setenv /?)\r
44      for the full list of options. setenv /xp /x86 /release for example.\r
45 \r
46     Using the Visual Studio command prompt Shell:\r
47      Everything is already pre-configured by calling one of the command\r
48      prompt.\r
49 \r
50 Once you are in the console, go to the winbuild directory in the Curl \r
51 sources:\r
52     cd curl-src\winbuild\r
53 \r
54 Then you can call nmake /f Makefile.vc with the desired options (see below).\r
55 The builds will be in the top src directory, builds\ directory, in \r
56 a directory named using the options given to the nmake call.\r
57 \r
58 nmake /f Makefile.vc mode=<static or dll> <options>\r
59 \r
60 where <options> is one or many of:\r
61   VC=<6,7,8,9,10,11,12>        - VC versions\r
62   WITH_DEVEL=<path>            - Paths for the development files (SSL, zlib, etc.)\r
63                                  Defaults to sibbling directory deps: ../deps\r
64                                  Libraries can be fetched at http://windows.php.net/downloads/php-sdk/deps/\r
65                                  Uncompress them into the deps folder.\r
66   WITH_SSL=<dll or static>     - Enable OpenSSL support, DLL or static\r
67   WITH_CARES=<dll or static>   - Enable c-ares support, DLL or static\r
68   WITH_ZLIB=<dll or static>    - Enable zlib support, DLL or static\r
69   WITH_SSH2=<dll or static>    - Enable libSSH2 support, DLL or static\r
70   ENABLE_SSPI=<yes or no>      - Enable SSPI support, defaults to yes\r
71   ENABLE_IPV6=<yes or no>      - Enable IPv6, defaults to yes\r
72   ENABLE_IDN=<yes or no>       - Enable use of Windows IDN APIs, defaults to yes\r
73                                  Requires Windows Vista or later, or installation from:\r
74                                  http://www.microsoft.com/downloads/details.aspx?FamilyID=AD6158D7-DDBA-416A-9109-07607425A815\r
75   ENABLE_WINSSL=<yes or no>    - Enable native Windows SSL support, defaults to yes\r
76   GEN_PDB=<yes or no>          - Generate Program Database (debug symbols for release build)\r
77   DEBUG=<yes or no>            - Debug builds\r
78   MACHINE=<x86 or x64>         - Target architecture (default is x86)\r