2013-02-27 12 views
5

स्थापित करने के लिए मैंने सफलतापूर्वक पहाड़ शेर पर rbenv और ruby ​​build स्थापित किया है। रनिंग rbenv install 1.9.3-p392 साथ समाप्त होता है:rbenv ruby ​​checksum mismatch osx

checksum mismatch: ruby-1.9.3-p392.tar.gz (file is corrupt) expected f689a7b61379f83cbbed3c7077d83859, got 1cfc2ff433dbe80f8ff1a9dba2fd5636

फ़ाइल यह है कि डाउनलोड ठीक लग रहा है, और अगर मैं मैन्युअल रूप से कर्ल का उपयोग कर फ़ाइल डाउनलोड, मैं एक ही गलत checksum मिलता है।

क्या किसी ने इससे पहले सामना किया है? उन्होंने इसे कैसे हल किया?

उत्तर

9

टीएल: डॉ; http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz से गहरे लाल रंग का अपने ब्राउज़र का उपयोग कर डाउनलोड करें और ~/.rbenv/caches/ruby-1.9.3-p392.tar.gz में रखें, तो rbenv install 1.9.3-p392

समस्या curl के साथ निहित है, और ftp.ruby-lang.org सर्वर चलाते हैं। चूंकि कर्ल Accept-Encoding: gzip से गुजरता नहीं है, इसलिए सर्वर संपीड़ित संस्करण (~ 12 एमबी) के बजाय रूबी (~ 60 एमबी) के गैर-जीज़ेड संस्करण को प्रदान करता है। इससे चेकसम विफल हो जाता है, और निर्माण बंद हो जाता है।

curl --header "Accept-Encoding: gzip" के साथ फ़ाइल डाउनलोड करने से, सही चेकसम देता है। हालांकि, rbenv का नवीनतम संस्करण curl को curl को पास करता है, जो .curlrc फ़ाइलों को अनदेखा करता है, जिससे स्रोत को संपादित किए बिना कॉन्फ़िगर करना मुश्किल हो जाता है।

आसान समाधान ruby.tar.gz मैन्युअल रूप से डाउनलोड करना और इसे कैश फ़ोल्डर में रखना है, इस मुद्दे को पूरी तरह से छोड़ना।

+5

धन्यवाद। ऐसा लगता है कि कैश निर्देशिका अब ~ ~/.bbenv/cache' ** अंत में ** नहीं है। – Craz

+0

2.0.0-p0 के लिए भी ऐसा करना था। एक इलाज किया - धन्यवाद! – Jurgen

+1

मैंने पाया कि मेरे '~/.curlrc' जो विकल्पों में से एक के रूप में '--compressed' था, समस्याओं का स्रोत था। –

0
नहीं

यकीन है कि अगर संबंधित, लेकिन उसके बाद मुझे लगता है कि समस्या थी, और @ कैम का जवाब पढ़ा है, मुझे काढ़ा से कर्ल स्थापित करने का फैसला किया है, और जब मैं इसे फिर से गहरे लाल रंग का स्थापित करने की कोशिश की यह काम किया।

तो brew install curl और जांचें कि यह आपके लिए काम करता है या नहीं।