2013-11-21 6 views
5

Używam centos 6.2, potrzebowałem użyć curl --http2.0 w jednym z żądań serwera, ale miałem 7.19.6, po patrząc na http://curl.haxx.se/docs/manpage.html daje mi, że opcja --http2.0 jest obsługiwana tylko z curl 7.33.0, więc aby rozwiązać ten problem, zainstalowałem curl 7.33.0, wykonując kroki od http://www.linuxfromscratch.org/blfs/view/svn/basicnet/curl.html po zainstalowaniu curl, próbowałem użyć , ale to wciąż daje mi ten błąd jako curl (1): nieobsługiwany protokół, Sprawdziłem mój curl wersję za pomocą: curl version to daje mi:użycie opcji --http2.0 z curl 7.33.0 daje nieobsługiwany protokół

curl 7.33.0 (x86_64-unknown-linux-gnu) libcurl/7.33.0 OpenSSL/1.0.0 zlib/1.2.3 
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp 
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz 

Potrzebowałem użyć tego --http2.0, ale nie dostałem nic, jak mogłem to zrobić? Jak zainstalowano curl 7.19 i ponownie zainstalowałem curl z wyższą wersją, robi to jakiś problem?

Odpowiedz

4

Jak wyjaśnił Daniel on the mailing list:

Mój plan jest oparcie pracę http2 na bibliotece nghttp2 (https://github.com/tatsuhiro-t/nghttp2) [...] HTTP2 rozpocznie jako "cecha" w kategoriach libCurl i nie specjalnie jako oddzielny protokół.

Przede wszystkim trzeba ręcznie zainstalować nghttp2 [1].

Następnie trzeba wyraźnie włączyć obsługę HTTP2 na Configure-czas z --with-nghttp2:

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

[1]: w momencie pisania README stwierdza, że ​​nie jest pakowany w Ubuntu, więc trzeba zbudować to samemu.

EDIT

Tutaj znajdziesz podstawowe instrukcje do budowy biblioteki tylko (a nie narzędzie wiersza poleceń) z opcjami domyślnymi.

Aby zbudować nghttp2 trzeba najpierw zainstalować swoje wymagania (jak wyszczególniono na nghttp2 documentation page):

# To clone the nghttp2 Github repo 
yum install git 

# Build essentials 
yum install gcc 
yum install make 
yum install automake 
yum install libtool 

# Required to build the library 
yum install pkgconfig 
yum install zlib-devel 

raz zrobić sklonować repo:

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

zbudować bibliotekę jak wyjaśniono here:

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

Następnie de taktyka to:

make install 

Jeśli wszystko jest OK, to wtedy trzeba budować libCurl 7.33.0 poprzez dbanie, aby umożliwić nghttp2 z ./configure --with-nghttp2=/usr/local [...].

Dodatki

Jeśli chcesz budować aplikacje dodatkowo (nghttp ...) Trzeba by zainstalować dodatkowe pakiety przed budową nghttp2:

yum install openssl-devel 
yum install libevent-devel 
yum install libxml2-devel 
yum install jansson-devel 
+0

im nie mógł go zainstalować, możesz dać mi krok mądry krok, wszystkie instrukcje, aby go zainstalować, jak im początkującego użytkownika Linuksa ... dzięki za wsparcie –

+0

jeśli to możliwe, podaj instrukcje dotyczące innego wymaganego oprogramowania, które je obsługuje. –

+0

Edytowałem swoje pytanie za pomocą instrukcji kompilacji biblioteki nghttp2. – deltheil

Powiązane problemy