2013-02-27 28 views
5

Dağ aslanı üzerinde rbenv ve ruby ​​build'i başarıyla kurdum. rbenv install 1.9.3-p392 Koşu ile biter:rbenv ruby ​​sağlama toplamı uyuşmuyor osx

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

o indirilmesi iyi görünüyor olduğu dosya ve el curl kullanarak dosyayı indirirseniz, ben aynı yanlış sağlama almak.

herkes önce bu karşılaştı? Nasıl çözdüler?

cevap

9

tl: dr; Sonra rbenv install 1.9.3-p392

sorun curl aittir ve ftp.ruby-lang.org sunucusu çalıştırmak, http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz tarayıcınızı kullanarak yakut indirin ve ~/.rbenv/caches/ruby-1.9.3-p392.tar.gz yerleştirin. Curl, Accept-Encoding: gzip'dan geçmediğinden, sunucu sıkıştırılmış sürümü (~ 12mb) yerine ruby ​​(~ 60mb) olmayan gzipli sürümünü sunar. Bu, sağlama toplamının başarısız olmasına ve yapının durmasına neden olur.

Dosyayı curl - başlık ile indirme "Kabul-Kodlama: gzip", doğru sağlama toplamını verir. Ancak, rbenv'in en son sürümü -q bayrağını kıvrılarak geçer ve bu da .curlrc dosyalarını yok sayar ve bu da kaynağı düzenlemeden yapılandırmayı zorlaştırır.

Kolay çözüm ruby.tar.gz dosyasını manuel olarak indirmek ve sorunu tamamen atlayarak önbellek klasörüne yerleştirmektir.

+5

Teşekkürler. Önbellek dizininin şu anda '~/.rbenv/cache' ** ucunda olduğunu görüyoruz **. – Craz

+0

Bunu 2.0.0-p0 için de yapmam gerekiyordu. Bir tedavi yaptı - teşekkürler! – Jurgen

+1

'' Sıkıştırılmış' 'olan' ~/.curlrc' seçeneklerinden birinin sorunların kaynağı olduğunu keşfettim. –

0

İlgili olup olmadığından emin değilim, ancak bu sorunla karşılaştıktan sonra ve @ Cam'ın cevabını okuduğumda, demini demetten kurmaya karar verdim ve tekrar ruby'yi kurmaya çalıştığımda işe yaradı.

brew install curl ve sizin için uygun olup olmadığını kontrol edin.