Skip to content

Instantly share code, notes, and snippets.

@coderua
Last active July 19, 2021 17:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save coderua/7b33f9f8518b3ca02193980045ee9368 to your computer and use it in GitHub Desktop.
Save coderua/7b33f9f8518b3ca02193980045ee9368 to your computer and use it in GitHub Desktop.
Compile latest curl from source code with HTTP2 support (Debian Linux)
# Tested on Debian 10 (Buster)
wget https://curl.se/download/curl-7.77.0.zip
unzip curl-7.77.0.zip
cd curl-7.77.0
sudo apt-get build-dep curl
sudo apt-get install build-essential
sudo apt-get install libcunit1-dev libssl-dev libev-dev libevent-dev libjansson-dev libjemalloc-dev
sudo apt-get install libssh2-1-dev
sudo apt-get install zlib1g zlib1g-dev
sudo apt-get install libpsl5
sudo apt-get install librtmp1 librtmp-dev
./configure --with-ssl --with-libssh2 --with-libidn2 --with-zlib --with-libpsl --with-librtmp --with-nghttp2
make
sudo make install
sudo ldconfig
curl --version
# Output will looks like:
# curl 7.77.0 (x86_64-pc-linux-gnu) libcurl/7.77.0 OpenSSL/1.1.1d zlib/1.2.11 libidn2/2.2.0 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 librtmp/2.3 OpenLDAP/2.4.47
# Release-Date: 2021-05-26
# $ Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
# $ Features: alt-svc AsynchDNS HSTS HTTP2 HTTPS-proxy IDN IPv6 Largefile libz NTLM NTLM_WB PSL SSL TLS-SRP UnixSockets
# Test curl
curl --http2 https://nghttp2.org -v
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment