using --http2.0 option with curl 7.33.0 gives unsupported protocol using --http2.0 option with curl 7.33.0 gives unsupported protocol curl curl

using --http2.0 option with curl 7.33.0 gives unsupported protocol


As explained by Daniel on the mailing list:

My plan is to base the http2 work on the nghttp2 library (https://github.com/tatsuhiro-t/nghttp2) [...] HTTP2 will start as a "feature" in libcurl terms and not specifically as a separate protocol.

So first of all you need to install nghttp2 manually[1].

Then you need to explicitly enable HTTP2 support at configure-time with --with-nghttp2:

./configure --with-nghttp2=/path/to/nghttp2/install/dir [...]

[1]: at the time of writing the README states that it is not packaged in Ubuntu, so you need to build it yourself.

EDIT

Please find below basic instructions to build the library only (not the command line tool) with default options.

To build nghttp2 you first need to install its requirements (as detailed on nghttp2 documentation page):

# To clone the nghttp2 Github repoyum install git# Build essentialsyum install gccyum install makeyum install automakeyum install libtool# Required to build the libraryyum install pkgconfigyum install zlib-devel

Once done clone the repo:

git clone https://github.com/tatsuhiro-t/nghttp2.gitcd nghttp2

Build the library as explained here:

autoreconf -iautomakeautoconf# Note: I assume you want to deploy it under /usr/local# Feel free to adapt to your needs!./configure --prefix=/usr/localmake

Then deploy it:

make install

If everything is OK you then need to build libcurl 7.33.0 by taking care to enable nghttp2 with ./configure --with-nghttp2=/usr/local [...].

Extras

If you want to build the application programs in addition (nghttp, ...) you would have to install additional packages before building nghttp2:

yum install openssl-develyum install libevent-develyum install libxml2-develyum install jansson-devel