2013-11-21 8 views
5

मैं केंद्र 6.2 का उपयोग कर रहा हूं, मुझे सर्वर अनुरोध में से एक में curl --http2.0 का उपयोग करने की आवश्यकता है, लेकिन मेरे पास 7.1 9.6 था http://curl.haxx.se/docs/manpage.html पर देखकर मुझे यह मिलता है कि --http2.0 विकल्प केवल कर्ल 7.33.0 के साथ समर्थित है, इसलिए उस समस्या को दूर करने के लिए, मैंने कर्ल स्थापित करने के बाद http://www.linuxfromscratch.org/blfs/view/svn/basicnet/curl.html से चरणों का पालन करके कर्ल 7.33.0 स्थापित किया है, मैंने उपयोग करने का प्रयास किया है कि है, लेकिन यह अभी भी मुझे त्रुटि कर्ल (1) के रूप में दे रहा है: असमर्थित प्रोटोकॉल, मैं का उपयोग करके अपनी कर्ल संस्करण जाँच कर ली है: कर्ल --version यह मेरे दे रहा है:curl 7.33.0 के साथ --http2.0 विकल्प का उपयोग असमर्थित प्रोटोकॉल

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 

मुझे इसका उपयोग करने की आवश्यकता है --http2.0 लेकिन कुछ भी नहीं मिला कि मैं यह कैसे कर सकता हूं? कर्ल 7.1 9 स्थापित किया गया था और मैंने उच्च संस्करण के साथ कर्ल को पुनर्स्थापित किया, क्या इससे कोई समस्या हो रही है?

उत्तर

4

डैनियल on the mailing list द्वारा समझाया:

मेरे योजना nghttp2 पुस्तकालय पर http2 काम का आधार बनाया है (https://github.com/tatsuhiro-t/nghttp2) [...] HTTP2 एक "सुविधा" libcurl नियम और नहीं के रूप में शुरू कर देंगे विशेष रूप से एक अलग प्रोटोकॉल के रूप में।

तो सबसे पहले आपको nghttp2 मैन्युअल रूप से स्थापित करने की आवश्यकता है [1]।

तो आप स्पष्ट रूप से --with-nghttp2 साथ कॉन्फ़िगर-समय HTTP2 समर्थन सक्षम करना होगा:

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

[1]: README लिखने के समय कहा गया है कि यह उबंटू में पैक नहीं है, तो आप की जरूरत है इसे स्वयं बनाने के लिए

संपादित

कृपया बुनियादी निर्देश डिफ़ॉल्ट विकल्प के साथ पुस्तकालय केवल (नहीं कमांड लाइन टूल) का निर्माण करने के लिए नीचे दिए गए हैं।

निर्माण करने के लिए nghttp2 आप पहली बार अपनी आवश्यकताओं को स्थापित करने के लिए (के रूप में 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 

एक बार क्लोन किया रेपो:

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

पुस्तकालय का निर्माण के रूप में समझाया 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 

फिर डी चाल यह:

make install 

तो सब कुछ ठीक है आप तो देखभाल ./configure --with-nghttp2=/usr/local [...] साथ nghttp2 सक्षम करने के लिए द्वारा libcurl 7.33.0 का निर्माण करने की जरूरत है।

अतिरिक्त

आप इसके (nghttp में आवेदन कार्यक्रम का निर्माण करना चाहते हैं, तो ...) आप nghttp2 निर्माण से पहले अतिरिक्त पैकेज इंस्टॉल करने के लिए होता है:

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

im इसे स्थापित करने में सक्षम नहीं है, आप मुझे बुद्धिमान कदम सभी निर्देशों का यह स्थापित करने के लिए, im नौसिखिया उपयोगकर्ता Linux में के रूप में कदम दे सकते हैं ... समर्थन के लिए धन्यवाद –

+0

यदि संभव हो, तो –

+0

का समर्थन करने के लिए अन्य आवश्यक सॉफ़्टवेयर के लिए निर्देश दें, मैंने nghttp2 लाइब्रेरी बिल्ड निर्देशों के साथ अपना प्रश्न संपादित किया है। – deltheil

संबंधित मुद्दे