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.

Razor Storm
sumber

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
Razor Storm
sumber
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
mpapis
sumber
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.

Isaac Rabinovitch
sumber
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

mpapis
sumber
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
Kewin
sumber
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 .

belgoros
sumber