tidak dapat memuat file seperti itu - zlib bahkan setelah menggunakan rvm pkg install zlib


112

Saya menginstal paket zlib dan ruby ​​1.9.3 menggunakan rvm, tetapi setiap kali saya mencoba menginstal permata tertulis cannot load such file -- zlib

Perintah yang saya gunakan untuk menginstal adalah

$ rvm install 1.9.3
$ rvm pkg instal zlib

$ rvm instal ulang 1.9.3 --with-readline-dir = / home / username / .rvm / usr \
    --dengan-iconv-dir = / home / username / .rvm / usr \
    --dengan-zlib-dir = / home / username / .rvm / usr \
    --with-openssl-dir = / home / username / .rvm / usr

$ rvm menggunakan 1.9.3

$ gem instal heroku
EROR: Memuat perintah: install (LoadError)
    tidak dapat memuat file seperti itu - zlib
EROR: Saat menjalankan gem ... (NameError)
    Gem :: Commands :: InstallCommand konstan yang tidak diinisialisasi

Semua bantuan tentang hal ini memberitahu saya untuk melakukan rvm pkg install zlib, dan kemudian menginstal ulang ruby ​​dengan --with-zlib-dir=/home/username/.rvm/usr, tetapi ini tidak berhasil.

Jawaban:


201

Saya akhirnya menginstal zlib dari apt-get dan kemudian menginstal ulang ruby ​​agar tidak menggunakan direktori rvm untuk zlib.

Begini caranya:

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

[Sunting] Sebagai komentator @chrisfinne menyebutkan, pada sistem berbasis CentOS / RedHat:

$ sudo yum install zlib-devel
$ rvm reinstall 1.9.3

21
atau sudo yum install zlib-devel
chris finne

4
Yah, apa pun OSnya, saran @chrisfinne tetap berguna (setidaknya untuk saya)!

Bekerja dengan sempurna untuk saya. Meskipun saya harus mengkompilasi ulang sekali lagi karena saya kehilangan libssl-dev juga (saya membutuhkannya karena rvm ingin mengambil sumber ruby ​​melalui HTTPS) :-)
tr9sh

9

Kedua tanggapan lainnya hampir benar ...

Situs rvm untuk zlib memberikan perbaikan cepat!

Di bagian atas halaman adalah "Perbaikan cepat" ikuti petunjuknya, itu akan:

  • perbaiki instalasi Anda,
  • memberi Anda instruksi apa yang harus dilakukan untuk menginstal zlib dari sistem Anda
  • dan tunjukkan cara menginstal ulang ruby

1

Ruby memiliki banyak dependensi paket seperti yang ada di zlib-devel. Mereka jahat karena tidak ada yang menunjukkan bahwa Anda memerlukan perpustakaan sampai mendapatkan pesan kesalahan yang tidak jelas saat mencoba melakukan sesuatu yang rutin.

Solusinya adalah dengan menggunakan rvm . Gunakan meskipun Anda hanya membutuhkan satu versi ruby. Mengapa? Karena dengan begitu Anda bisa melakukannya

rvm requirements

Ini akan menyelidiki OS khusus Anda dan menghasilkan sekumpulan perintah yang dapat Anda salin kembali ke baris perintah untuk menginstal paket yang hilang tersebut.


1

Gunakan autolibs untuk menginstal dependensi:

rvm autolibs enable
rvm reinstall 1.9.3

RVM secara otomatis akan menginstal dependensi yang hilang dan menggunakannya untuk mengompilasi ruby.

Detail selengkapnya tentang autolibs => http://rvm.io/rvm/autolibs


1
rvm pkg instal openssl && rvm pkg instal zlib && rvm pkg instal libyaml &&
  rvm pkg menginstal iconv
rvm install 1.9.3-p0 --dengan-opt-dir = $ HOME / .rvm / usr \
  --dengan-libxml2-dir = / usr / local / Cellar / libxml2 / 2.7.8 \
  --dengan-readline-dir = / usr / local / Cellar / readline / 6.2.1

1

Solusi yang berhasil untuk saya dijelaskan di repo github rvm, masalah # 3389 .

Lari

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

untuk versi ruby 2.3.0 .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.