This document describes how to compile, build and install curl and libcurl
from sources using an IDE based development tool such as Visual Studio.
- Project files are currently available for Visual C++ v6.0 to v12.0. The
+ Project files are currently available for Visual C++ v6.0 to v15.0. The
following directory structure has been used to cater for this:
somedirectory\
============
The projects files also support build configurations that require third
- party dependencies such as OpenSSL and SSH2. If you wish to support these,
- you will also need to download and compile those libraries as well.
+ party dependencies such as OpenSSL, wolfSSL and SSH2. If you wish to support
+ these, you will also need to download and compile those libraries as well.
To support compilation of these libraries using different versions of
compilers, the following directory structure has been used for both the
|_VC <version>
|_<configuration>
- As OpenSSL doesn't support side-by-side compilation when using different
- versions of Visual Studio a build helper batch file has been provided to
- assist with this. Please run "build-openssl -help" for usage details.
+ As OpenSSL and wolfSSL don't support side-by-side compilation when using
+ different versions of Visual Studio, build helper batch files have been
+ provided to assist with this. Please run "build-openssl -help" and/or
+ "build-wolfssl -help" for usage details.
Building with Visual C++
========================
If you require support for Internationalized Domain Names via Windows IDN
then you will need either:
- * Microsoft Internationalized Domain Name (IDN) Mitigation APIs:
- https://www.microsoft.com/en-us/download/details.aspx?id=734
-
* Microsoft Windows SDK Update for Windows Vista:
https://www.microsoft.com/en-us/download/details.aspx?id=23719
... where 'Path to DLL` is the configuration specific path. For example the
following configurations in Visual Studio 2010 might be:
-
+
DLL Debug - DLL OpenSSL (Win32):
PATH=..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;C:\Windows\system32;
C:\Windows;C:\Windows\System32\Wbem
=====
The following keywords have been used in the directory hierarchy:
-
+
<platform> - The platform (For example: Windows)
<ide> - The IDE (For example: VC6, VC10, BCC5)
<architecture> - The platform architecture (For example: Win32, Win64)
If you are using the source code from the git repository, rather than a
release archive or nightly build, you will need to generate the project
- files. Please run "generate -help" for usage details.
+ files. Please run "generate -help" for usage details.
Should you wish to help out with some of the items on the TODO list, or
find bugs in the project files that need correcting, and would like to
submit updated files back then please note that, whilst the solution files
- can be edited directly, the templates for the project files (which are
+ can be edited directly, the templates for the project files (which are
stored in the git repositoty) will need to be modified rather than the
generated project files that Visual Studio uses.
support the legacy handshakes and algorithms used by those versions. If
you will be using curl in one of those earlier versions of Windows you
should choose another SSL backend such as OpenSSL.
-
-TODO
-====
-
- These project files are a recent addition to the curl source code and as such
- are not 100% complete. This is a list of things that are still todo:
-
- * Support zlib
- * Use of static runtime libraries
- * Add the Test Suite components
- * Support for other development IDEs
- * Add PATH environment variables for third-party DLLs
-
- Any additional help would be appreciated ;-)
\ No newline at end of file