webentwicklung-frage-antwort-db.com.de

kann solche datei nicht laden - zlib auch nach der verwendung von rvm pkg install zlib

Ich habe das zlib-Paket und Ruby 1.9.3 mit rvm installiert, aber jedes Mal, wenn ich versuche, Gems zu installieren, steht cannot load such file -- zlib

Die Befehle, die ich verwendet habe, um zu installieren, sind

$ rvm install 1.9.3
 $ rvm pkg install zlib 
 
 $ rvm uninstall 1.9.3 --with-readline-dir =/home/benutzername/.rvm/usr\
 - -mit-iconv-dir =/home/benutzername/.rvm/usr\
 --mit-zlib-dir =/home/benutzername/.rvm/usr\
 --mit-openssl -dir =/home/benutzername/.rvm/usr 
 
 $ rvm use 1.9.3 
 
 $ gem install heroku 
 FEHLER: Wird geladen Befehl: install (LoadError) 
 kann solche Datei nicht laden - zlib 
 FEHLER: Während der Ausführung von gem ... (NameError) 
 nicht initialisierte Konstante Gem :: Commands :: InstallCommand 

Die ganze Hilfe zu diesem Thema sagt mir, ich solle nur rvm pkg install zlib, und installieren Sie das Ruby mit --with-zlib-dir=/home/username/.rvm/usr, aber das hat nicht funktioniert.

112
Razor Storm

Am Ende habe ich zlib von apt-get installiert und dann Ruby neu installiert, um nicht das rvm-Verzeichnis für zlib zu verwenden.

So geht's:

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

[Bearbeiten] Als Kommentar erwähnt @chrisfinne auf CentOS/RedHat-basierten Systemen:

$ Sudo yum install zlib-devel
$ rvm reinstall 1.9.3
202
Razor Storm

Die beiden anderen Antworten waren fast richtig ...

Die rvm site for zlib bietet eine schnelle Lösung!

Oben auf der Seite befindet sich eine "Schnellkorrektur". Befolgen Sie die Anweisungen.

  • reparieren Sie Ihre Installation,
  • geben Sie Anweisungen, wie Sie zlib von Ihrem System installieren können
  • und zeigen, wie Ruby neu installiert wird
9
mpapis

Ruby hat eine Reihe von Paketabhängigkeiten wie zlib-devel. Sie sind unangenehm, weil nichts darauf hindeutet, dass Sie die Bibliothek benötigen, bis beim Versuch, etwas Routinemäßiges zu tun, eine undurchsichtige Fehlermeldung angezeigt wird.

Die Lösung ist rvm . Verwenden Sie es auch, wenn Sie nur eine Version von Ruby benötigen. Warum? Denn dann kannst du tun

rvm requirements

Dies prüft Ihr bestimmtes Betriebssystem und erstellt eine Reihe von Befehlen, die Sie zurück in die Befehlszeile kopieren können, um die fehlenden Pakete zu installieren.

1

Die Lösung, die für mich funktioniert hat, ist in rvm github repo, issue # 3389 beschrieben.

Lauf

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

für Ruby 2.3.0 version.

1
belgoros
 rvm pkg installiere openssl && rvm pkg installiere zlib && rvm pkg installiere libyaml && 
 rvm pkg installiere iconv 
 rvm installiere 1.9.3-p0 --with-opt-dir = $ HOME/.rvm/usr\
 --With-libxml2-dir =/usr/local/Cellar/libxml2/2.7.8\
 --With-readline-dir =/usr/local /Cellar/readline/6.2.1
1
Kewin

Verwenden Sie Autolibs, um Abhängigkeiten zu installieren:

rvm autolibs enable
rvm reinstall 1.9.3

RVM installiert automatisch fehlende Abhängigkeiten und verwendet sie zum Kompilieren von Ruby.

Weitere Details zu autolibs => http://rvm.io/rvm/autolibs

1
mpapis