I am compiling cURL (version 7.69.1) with OpenSSL (version 1.1.1g) on CentOS 7.

This is what i have done --

  1. For compiling curl
    ./configure --with-ssl --with-nghttp2  {nghttp2 for adding HTTP/2 feature)
    make install
  1. For compiling OpenSSL
     make test
     make install

(Although, i think i should have compiled OpenSSL before cURL but after cURL compilation only, i realized that my current OpeSSL version doesn't supports TLS1.3, so i have to compile the latest version of cURL.)

Now, on trying to access the site over tls1.3, i am getting the following error --

#curl https://tls1.3.nkn.in --tlsv1.3 -v
*   Trying
* Connected to tls1.3.nkn.in ( port 443 (#0)
* OpenSSL was built without TLS 1.3 support
* Closing connection 0
curl: (4) OpenSSL was built without TLS 1.3 support

Then, i tried to compile the cURL again but noticed the following statement in cURL configuration --

checking for OpenSSL headers version... 1.1.1 - 0x1010107fL
checking for OpenSSL library version... 1.0.2

What should i do to resolve this ?

1 Answer 1


After hours of troubleshooting, it works by the following steps -

  1. Re-compile OpenSSL again with with --prefix option
# ./config --prefix=/usr/local/OpenSSL
make install
  1. Re-compile cURL again
./configure --with-ssl=/usr/local/OpenSSL --with-nghttp2=/usr/local    {nghttp2 for HTTP/2 support}
make install

The following Output shows compilation of cURL with OpenSSL/1.1.1g AND HTTP/2 support

# curl -V
curl 7.69.1 (x86_64-pc-linux-gnu) libcurl/7.69.1 OpenSSL/1.1.1g zlib/1.2.7 nghttp2/1.41.0-DEV
Release-Date: 2020-03-11
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS HTTP2 HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSockets


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .