Skip to content

An unofficial mirror of the curl library with support for static linking on Windows.

Notifications You must be signed in to change notification settings

MarcelKlammer/curl-for-windows

 
 

Repository files navigation

Curl for windows

Curl is a command line tool for transferring data specified with URL syntax. Find out how to use curl by reading the curl.1 man page or the MANUAL document. Find out how to install Curl by reading the INSTALL document.

libcurl is the library curl is using to do its job. It is readily available to be used by your software.

About

This repository is a collection of submodules (dependencies) that curl need to build successfully. Each submodule tracks the latest known git release tag. In order to make this easy to maintain i converted the buildsystem to GYP. Please note that this is not a FORK and no patches has been applied or sent upstream.

By following the tutorial below, you should be able build a working, statically linked version of the latest libcurl.

Both x86 and x64 builds are supported.

Happy linking ;)

Download prebuilt version of curl

Download available for your convenience over at SourceForge which also includes the static libraries.

Obtaining a free copy of visual studio

If you do not have a visual studio license you can download Visual Studio 2013 Express edition for free.

Curl dependencies

Prerequisites

Obtaining prerequisites

$ git clone https://github.com/peters/curl-for-windows.git
$ git submodule update --init --recursive

Configuration options

$ python configure.py --help
Usage: configure.py [options]

Options:
  -h, --help            show this help message and exit
  --toolchain=TOOLCHAIN
                        msvs toolchain to build for. [default: auto]
  --target-arch=TARGET_ARCH
                        CPU architecture to build for. [default: x86]

Generate project files

$ python configure.py 

Open respective curl.sln found in out folder ;)

Simple curl example

If you are new to curl you can checkout the example project found in curl.sln or you can view additional the examples in the official curl repository.

Linking with libcurl (without gyp)

  • Add preprocessor flag

    • CURL_STATICLIB
  • Add include directory

    • path/to/curl/include
  • Add additional library search directory

    • path/to/out/Debug|Release/obj
  • Link with the following libraries

    • libcurl.lib
    • openssl.lib
    • libssh2.lib
    • zlib.lib
    • wsock32.lib
    • wldap32.lib
    • ws2_32.lib

By now you should have sweet, statically linked, CURL! ;)

About

An unofficial mirror of the curl library with support for static linking on Windows.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 63.7%
  • Assembly 14.4%
  • Perl 11.8%
  • Makefile 4.0%
  • C++ 2.4%
  • DIGITAL Command Language 1.6%
  • Other 2.1%