böyle bir dosya yüklenemiyor - zlib rvm pkg install zlib kullanıldıktan sonra bile


112

Zlib paketi ve ruby ​​1.9.3'ü rvm kullanarak yükledim, ancak ne zaman mücevher yüklemeye çalışsam diyor cannot load such file -- zlib

Yüklemek için kullandığım komutlar

$ rvm install 1.9.3
$ rvm pkg zlib yükle

$ rvm yeniden yükleme 1.9.3 --with-readline-dir = / home / kullanıcı adı / .rvm / usr \
    --with-iconv-dir = / home / kullanıcı adı / .rvm / usr \
    --with-zlib-dir = / home / kullanıcı adı / .rvm / usr \
    --with-openssl-dir = / home / username / .rvm / usr

$ rvm kullanımı 1.9.3

$ gem heroku yükle
HATA: Komut yükleniyor: install (LoadError)
    böyle bir dosya yüklenemiyor - zlib
HATA: gem yürütülürken ... (NameError)
    başlatılmamış sabit Gem :: Komutlar :: InstallCommand

Bu konudaki tüm yardım bana sadece yapmamı rvm pkg install zlibve ardından yakutu ile yeniden --with-zlib-dir=/home/username/.rvm/usryüklememi söylüyor, ancak bu işe yaramadı.

Yanıtlar:


201

Yetişmem-apt ve sonra yeniden yakut gelen zlib yükleme sona erdi değil zlib için rvm dizini kullanır.

Nasıl yapılır:

$ sudo apt-get install zlib1g-dev
$ rvm reinstall 1.9.3

[Düzenle] CentOS / RedHat tabanlı sistemlerde yorumcu @chrisfinne'in bahsettiği gibi:

$ sudo yum install zlib-devel
$ rvm reinstall 1.9.3

21
veya sudo yum install zlib-devel
chris finne

4
OS ne olursa olsun, @chrisfinne'in tavsiyesi hala yararlıdır (en azından benim için)!

Benim için mükemmel çalıştı. Yine de libssl-dev'i kaçırdığım için bir kez daha derlemem gerekmesine rağmen (buna ihtiyacım vardı çünkü rvm Ruby kaynaklarını HTTPS aracılığıyla almak istiyordu) :-)
tr9sh

9

Diğer her iki yanıt da neredeyse doğruydu ...

Zlib için rvm sitesi hızlı bir düzeltme sağlar!

Sayfanın üst kısmında bir "Hızlı düzeltme", talimatları izleyin, şunları yapacaktır:

  • kurulumunuzu düzeltin,
  • sisteminizden zlib'i kurmak için ne yapmanız gerektiği konusunda size talimatlar verin
  • ve Ruby'nin nasıl yeniden yükleneceğini gösterin

1

Ruby, zlib-devel'deki gibi bir dizi paket bağımlılığına sahiptir. İğrençler çünkü rutin bir şey yapmaya çalışırken belirsiz bir hata mesajı alana kadar kütüphaneye ihtiyacınız olduğunu gösterecek hiçbir şey yok.

Çözüm, rvm kullanmaktır . Ruby'nin yalnızca bir versiyonuna ihtiyacınız olsa bile kullanın. Neden? Çünkü o zaman yapabilirsin

rvm requirements

Bu, belirli işletim sisteminizi araştıracak ve eksik paketleri yüklemek için komut satırına geri kopyalayabileceğiniz bir dizi komut üretecektir.


1

Bağımlılıkları yüklemek için autolibs kullanın:

rvm autolibs enable
rvm reinstall 1.9.3

RVM, eksik bağımlılıkları otomatik olarak kurar ve Ruby'yi derlemek için kullanır.

Autolibs => http://rvm.io/rvm/autolibs hakkında daha fazla ayrıntı


1
rvm pkg openssl && rvm pkg yükle zlib && rvm pkg yükle libyaml && yükle
  rvm pkg yükleme iconv
rvm kurulum 1.9.3-p0 --with-opt-dir = $ HOME / .rvm / usr \
  --with-libxml2-dir = / usr / local / Cellar / libxml2 / 2.7.8 \
  --with-taleb-dir = / usr / yerel / mahzeni / taleb / 6.2.1

1

Benim için işe yarayan çözüm rvm github deposunda, sayı # 3389'da açıklanmıştır .

Çalıştırmak

rvm install 2.3.0 --with-zlib-dir=/usr/local/Cellar/zlib/1.2.8

Ruby 2.3.0 sürümü için.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.