How do I install and use cURL on Windows?

WindowsCurlInstallation

Windows Problem Overview


I am having trouble getting cURL to run on Windows.

I have downloaded a cURL zip file from here, but it seems to contain source code, not an executable.

Do I need to compile cURL to run it? If yes, then how do I do that?

Where can I find .exe downloads for cURL ?

I have looked for documentation on installing cURL, but there is little to be found.

Windows Solutions


Solution 1 - Windows

You might already have curl

It is possible that you won't need to download anything:

  • If you are on Windows 10, version 1803 or later, your OS ships with a copy of curl, already set up and ready to use.

  • If you have Git for Windows installed (if you downloaded Git from git-scm.com, the answer is yes), you have curl.exe under:

     C:\Program Files\Git\mingw64\bin\
    

    Simply add the above path to PATH.

Installing curl with a package manager

If you are already using a package manager, it may be more convenient to install with one:

new Cygwin installer design

Installing curl manually

Downloading curl

It is too easy to accidentally download the wrong thing. If, on the curl homepage, you click the large and prominent "Download" section in the site header, and then the large and prominent curl-7.62.0.tar.gz link in its body, you will have downloaded a curl source package, which contains curl's source code but not curl.exe. Watch out for that.

Instead, click the large and prominent download links on this page. Those are the official Windows builds, and they are provided by the curl-for-win project.

If you have more esoteric needs (e.g. you want cygwin builds, third-party builds, libcurl, header files, sources, etc.), use the curl download wizard. After answering five questions, you will be presented with a list of download links.

Extracting and setting up curl

Find curl.exe within your downloaded package; it's probably under bin\.

Pick a location on your hard drive that will serve as a permanent home for curl:

  • If you want to give curl its own folder, C:\Program Files\curl\ or C:\curl\ will do.
  • If you have many loose executables, and you do not want to add many individual folders to PATH, use a single folder such as C:\Program Files\tools\ or C:\tools\ for the purpose.

Place curl.exe under the folder. And never move the folder or its contents.

Next, you'll want to make curl available anywhere from the command line. To do this, add the folder to PATH, like this:

  1. Click the Windows 10 start menu. Start typing "environment".
  2. You'll see the search result Edit the system environment variables. Choose it.
  3. A System Properties window will popup. Click the Environment Variables button at the bottom.
  4. Select the "Path" variable under "System variables" (the lower box). Click the Edit button.
  5. Click the Add button and paste in the folder path where curl.exe lives.
  6. Click OK as needed. Close open console windows and reopen, so they get the new PATH.

Now enjoy typing curl at any command prompt. Party time!

Solution 2 - Windows

Assuming you got it from https://curl.haxx.se/download.html, just unzip it wherever you want. No need to install. If you are going to use SSL, you need to download the OpenSSL DLLs, available from curl's website.

Solution 3 - Windows

  1. Download curl zip
  2. Extract the contents (if you have downloaded the correct version you should find curl.exe)
  3. Place curl.exe in a folder where you keep your software (e.g. D:\software\curl\curl.exe)
  4. To run curl from the command line

a) Right-hand-click on "My Computer" icon

b) Select Properties

c) Click 'Advanced system settings' link

d) Go to tab [Advanced] - 'Environment Variables' button

e) Under System variable select 'Path' and Edit button

f) Add a semicolon followed by the path to where you placed your curl.exe (e.g. ;D:\software\curl)

Now you can run from the command line by typing:

curl www.google.com

Solution 4 - Windows

Starting with Windows 10 version 1803 (and earlier, with insider build 17063), you don't install curl anymore. Windows includes a native curl.exe (and tar.exe) in C:\Windows\System32\, which you can access right from your regular CMD.

C:\Users\vonc>C:\Windows\System32\curl.exe --version
curl 7.55.1 (Windows) libcurl/7.55.1 WinSSL
Release-Date: [unreleased]
Protocols: dict file ftp ftps http https imap imaps pop3 pop3s smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile SSPI Kerberos SPNEGO NTLM SSL

C:\Users\vonc>C:\Windows\System32\tar.exe --version
bsdtar 3.3.2 - libarchive 3.3.2 zlib/1.2.5.f-ipp

See the initial announcement and the release announcement.

Solution 5 - Windows

The simplest tutorial for setting up cURL on Windows is the Making cURL work on Windows 7. It only have 3 easy steps.

Solution 6 - Windows

  1. Download cURL (Win64 ia64 zip binary with SSL)
  2. Extract curl.exe into "C:\Windows\System32"
  3. Done

Even more easier:

Download the Win64 2000/XP x86_64 MSI installer provided by Edward LoPinto.

At the time of writing file curl-7.46.0-win64.exe was the most recent. Tested with Windows 10.

Solution 7 - Windows

It's probably worth noting that Powershell v3 and up, contains a cmdlet called Invoke-WebRequest that has some curl-ish capabilities. The New-WebServiceProxy and Invoke-RestMethod cmdlets are probably worth mentioning too.

I'm not sure they will fit your needs or not, but although I'm not a Windows guy, I have to say I find the object approach PS takes, a lot easier to work with than utilities such as curl, wget etc. They may be worth taking a look at

Solution 8 - Windows

Note also that installing Git for Windows from [git-scm.com][1] also installs Curl. You can then run Curl from Git for Windows' BASH terminal (not the default Windows CMD terminal).

[1]: https://git-scm.com/download/win/ "git-scm.com"

Solution 9 - Windows

As you already know, you can find several packages of binaries on the official curl website.

Once you download a package, unzip it wherever you want. I recommend adding its location to your path, so you can call curl from batch or powershell scripts. To add a directory to your path type "environment variables" in the start menu, and select "edit user environment variables". Select Path, and add to the end of the "value" box: ;C:\curl\directory (with the directory changed to where you saved curl.)

If you want to use SSL you need a certificate bundle. Run either mk-ca-bundle.pl (perl) or mk-ca-bundle.vbs (VBScript). Some of the packages of binaries include one or both of them. If your download doesn't include one, download one here: https://github.com/bagder/curl/tree/master/lib. I recommend mk-ca-bundle.vbs, as on windows you simply double click it to run it. It will produce a file called ca-bundle.crt. Rename it curl-ca-bundle.crt and save it in the directory with curl.exe.

Alternatively, I recently developed an msi installer that sets up a full featured build of curl with just a few clicks. It automatically ads curl to your path, includes a ready-to-use ssl certificate bundle, and makes the curl manual and documentation accessible from the start menu. You can download it at www.confusedbycode.com/curl/.

Solution 10 - Windows

Install Chocolatey package manager for Windows. Once installed, simply enter choco install curl. Then you can use curl from a terminal.

Solution 11 - Windows

Thought I'd write exactly what I did (Windows 10, 64-bit):

From the download page https://curl.haxx.se/download.html choose the download wizard https://curl.haxx.se/dlwiz/

Choose curl executable.

Choose Win64.

Choose generic.

Choose any.

Choose x86_64.

Choose the first recommended option. For me this was:

curl version: 7.53.1 - SSL enabled SSH enabled. Provided by: Viktor Szakáts. This package is type curl executable You will get a pre-built 'curl' binary from this link (or in some cases, by using the information that is provided at the page this link takes you). You may or may not get 'libcurl' installed as a shared library/DLL. The file is packaged using 7zip. 7zip is a file archiving format.

Click download.

You should have the file curl-7.53.1-win64-mingw.7z in your downloads folder.

Install 7-Zip if you don't have it.

Right-click, 7-Zip, Extract Here. Copy and paste the extracted file somewhere like Z:\Tools\

If you look in the bin folder you'll see curl.exe. If you double-click it a window will quickly flash up and vanish. To run it you need to use the Command Prompt. Navigate to the bin folder and type curl followed by your parameters to make a request. You must use double-quotes. Single quotes won't work with curl on Windows.

Now you'll want to add curl to a user's Path variable so you don't have to navigate to the right folder to run the program. Go to This PC, Computer, System Properties, Advanced system settings, authenticate as an administrator (you're not running as admin, right? Right?) Environment Variables, System variables, look at the list and select Path, then Edit, then New, then, e.g.

Z:\Tools\curl-7.53.1-win64-mingw\bin

You can add a trailing backslash if you like, I don't think it matters. Click move up until it's at the top of the list, then you can see it easily from the previous screen. Click OK, OK, OK, then crack open a Command Prompt and you can run curl by typing curl from any folder, as any user. Don't forget your double-quotes.

This is the answer I wish I'd had.

Solution 12 - Windows

You can build the latest version of curl, openssl, libssh2 and zlib in 3 simple steps by following this tutorial.

Curl is built statically so you do not have to distribute the prerequisite dynamic runtime.

You can also download a prebuilt version (x86 and x64) from SourceForge.

Solution 13 - Windows

I had a lot of issues with curl for Windows. I finally used Cygwin, which includes curl by default.

Solution 14 - Windows

I was looking for the download process of Curl and every where they said copy curl.exe file in System32 but they haven't provided the direct link. so here it is enjoy, find curl.exe easily in bin folder just

> unzip it and then go to bin folder there you get exe file

link to download curl generic

Solution 15 - Windows

This installer made it easy for me http://www.confusedbycode.com/curl/

The link describes how to use it. Here's a summary taken from the website above:

"You can install cURL for Windows with only a few clicks. Just download and run an installer from the table below, and click Install. The default installation includes:

  1. curl.exe
  2. an SSL certificate bundle (ca-cert-bundle.crt)
  3. SSL certificate bundle generation scripts (mk-ca-bundle.pl & mk-ca-bundle.vbs)
  4. HTML manuals for cURL and libcurl
  5. text documentation formatted for Windows (so you can simply double click the files to read them with Notepad)
  6. Start Menu folder with shortcuts to the cURL installation folder, manuals, documentation, and uninstaller
  7. cURL added to your path, so you can use it with batch or PowerShell scripts and call it from the command prompt in any working directory

To include developers' files in your installation, click Advanced. The developers' files include libcurl.dll, libeay32.dll, ssleay32.dll, libssh2.dll, zlib.dll, msvcr120.dll, C headers, libs, and code examples.

When you click Advanced you can also choose whether or not to install the documentation and manuals, and whether or not to add cURL to your path.

If you don't have administrator privileges on your computer, use one of the files from the "Without Administrator Privileges" row. These install cURL in C:\Users\Name\AppData\Local\Apps.

If you do not want to use the installer, but still want the contents listed above, you can download one of the zip archives."

Solution 16 - Windows

Just download curl and extract the compressed file. You will get the file "curl.exe". Open a CMD Shell, drag the file curl.exe into the CMD Shell, now you can use curl.

enter image description here

Solution 17 - Windows

After adding curl.exe's path to the System Variable 'Path'

you can open command prompt and run 'curl -V' to see if it is working.

Solution 18 - Windows

Follow [download wizard](https://curl.haxx.se/dlwiz/ "takes you to curl official site download wizard page.")

Follow the screens one by one to select type of package (curl executable), OS (Win64), flavor (Generic), CPU (x86_64) and the download link.

unzip download and find curl.exe (I found it in src folder, one may find it in bin folder for different OS/flavor)

To make it available from the command line, add the executable path to the system path (https://stackoverflow.com/questions/9546324/adding-directory-to-path-environment-variable-in-windows).

Enjoy curl.

Solution 19 - Windows

Statically built WITH ssl for windows:

http://sourceforge.net/projects/curlforwindows/files/?source=navbar

You need curl-7.35.0-openssl-libssh2-zlib-x64.7z

..and for ssl all you need to do is add "-k" in addition to any other of your parameters and the bundle BS problem is gone; no CA verification.

Solution 20 - Windows

I have successfully used Windows curl-installer: http://open-edx-windows-7-installation-instructions.readthedocs.io/en/latest/6_Install_cURL_for_Windows.html

by using cURL for Windows direct download link with msi-installer. Remember to reboot your system after installing.

Solution 21 - Windows

  • Download curl for windows from the path : https://curl.haxx.se/windows/
  • Unzip and you will find the ..\bin\curl.exe
  • Add ...\bin\ to your path variable for easy global access

Solution 22 - Windows

I followed @theglauber's answer (the most popular one) but on Windows 10 Terminal / PowerShell the Environment setting did not take effect.

I had to CD into the GIT location and also use .\ like below:

PS C:\Program Files\Git\mingw64\bin> .\curl -X POST https://6sl8yohih.execute-api.us-west-1.amazonaws.com/dev/hello

I did not have any issues on the regular command prompt though.

Just posting this as an answer for someone who might be struggling as I did.

Solution 23 - Windows

I tried to install curl in many ways but finally started using gitbash terminal for curl commands.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionpri_devView Question on Stackoverflow
Solution 1 - WindowsMichiel van OosterhoutView Answer on Stackoverflow
Solution 2 - WindowstheglauberView Answer on Stackoverflow
Solution 3 - WindowsItharView Answer on Stackoverflow
Solution 4 - WindowsVonCView Answer on Stackoverflow
Solution 5 - WindowsAbel CallejoView Answer on Stackoverflow
Solution 6 - WindowsBenny NeugebauerView Answer on Stackoverflow
Solution 7 - Windowsuser2233949View Answer on Stackoverflow
Solution 8 - WindowsRBVView Answer on Stackoverflow
Solution 9 - WindowsConfusedByCodeView Answer on Stackoverflow
Solution 10 - WindowsAdamView Answer on Stackoverflow
Solution 11 - Windowsnmit026View Answer on Stackoverflow
Solution 12 - WindowsPeter Rekdal SundeView Answer on Stackoverflow
Solution 13 - WindowscprcrackView Answer on Stackoverflow
Solution 14 - WindowsPre_hackerView Answer on Stackoverflow
Solution 15 - WindowsAussie AshView Answer on Stackoverflow
Solution 16 - WindowsBlackView Answer on Stackoverflow
Solution 17 - WindowsShreyasView Answer on Stackoverflow
Solution 18 - Windowsbrajesh jaishwalView Answer on Stackoverflow
Solution 19 - WindowsBeebView Answer on Stackoverflow
Solution 20 - WindowsKirill ChView Answer on Stackoverflow
Solution 21 - WindowsVikashView Answer on Stackoverflow
Solution 22 - WindowsoneworldView Answer on Stackoverflow
Solution 23 - WindowsO_KView Answer on Stackoverflow