- We plan to stop building and distributing 32-bit Windows binaries on 2025-Aug-20. Custom 32-bit builds remain available with a deprecated, community-supported status. We recommend migrating to 64-bit Intel or ARM binaries.
- Download our
.tar.xz
or.zip
packages,
PGP signed with:BDCF 067D 3908 B272 7A4A 9487 67C1 0037 40BF 8DC2
- Standalone
curl
tool andlibcurl
DLL. Static libraries included. - Required: Windows Vista with Universal CRT (x64, ARM64 or x86), macOS 10.9 Mavericks (Intel or ARM), any Linux (amd64, arm64 or experimental RISC-V) with MUSL builds.
- HTTP/3, HTTP/2 support, and more.
- ARM64 Windows builds are Control Flow Guard enabled. Intel builds have CET enabled. All builds have frame pointers enabled.
- Transparent builds, using open source code, run in public, with auditable logs.
- LLVM/Clang build environment with
mingw-w64
via Debian, Homebrew, MSYS2.llvm-mingw
for ARM64. - Windows cross-built and published via
AppVeyor CI. Linux built via GHA.
Using reproducible OS image
debian:testing-slim
via Docker. macOS built on native OS. - Linux and macOS builds are experimental and not official curl builds.
- We verify components using SHA-256, and PGP where provided.
- We build reproducible binaries, producing the same hash given the same input sources and C compiler.
- Patching policy: No local patches. We may apply patches if already merged upstream or — for showstoppers — had them submitted with fair confidence of getting merged.
- You can look up our package hashes in lines starting with
SHA
in the build log. - Packages built across host platforms do not have identical hashes due to
slightly different build options and toolchain builds/versions. Except
llvm-mingw
builds, which are reproducible across platforms. ARM64 and BoringSSL builds are such by default. - We code-sign with a self-signed certificate on Windows, and avoid trusted timestamps for reproducibility.
Uses LibreSSL TLS backend.
Windows:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets zstd
macOS:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTP3 HTTPS-proxy IPv6 Largefile libz NTLM PSL SSL threadsafe UnixSockets zstd
Linux:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTP3 HTTPS-proxy IPv6 Largefile libz NTLM PSL SSL threadsafe UnixSockets zstd
Alternate configurations:
"noh3", HTTP/2:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets zstd
"mini", without brotli and zstd, with OS TLS backend (Schannel, SecureTransport) if available:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets
"micro", without libssh2:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets
"nano", HTTP/1.1:
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp ws wss
Features: AsynchDNS HSTS HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSPI threadsafe UnixSockets
"pico", HTTP/1.1-only:
Protocols: http https ipfs ipns
Features: AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz PSL SSL SSPI threadsafe
- Latest version for Windows:
https://curl.se/windows/ - Specific versions for Windows, back to 8.2.0:
https://curl.se/windows/dl-<curl-version>_<build-1-to-N>/
Example:
https://curl.se/windows/dl-8.2.0_1/
https://ci.appveyor.com/project/curlorg/curl-for-win/history
https://github.com/curl/curl-for-win/actions/workflows/daily.yml
See LICENSE.
Information in this document is subject to change without notice and does not represent or imply any future commitment by the participants of the project.
This document © Viktor Szakats, CC BY-SA 4.0