Der Versuch, Ruby 1.9.1 mit RVM bei einer Neuinstallation (Fedora) zum Laufen zu bringen.
Nachdem rvm install 1.9.1
ausgeführt wurde, zeigen die Fehlerprotokolle von rubygems, dass zlib nicht gefunden werden kann
keine solche Datei zum Laden - zlib (LoadError)
Sowohl die zlib-Laufzeitbibliothek als auch die Entwicklungsbibliotheken sind installiert und auf dem neuesten Stand.
Ich bin im Moment ein bisschen überlistet.
Verwenden Sie rvm, um zlib zu installieren
rvm package install zlib
rvm remove 1.9.1
rvm install 1.9.1 -C --with-zlib-dir=$rvm_path/usr
Bearbeiten: Der Befehl rvm package
wurde in v1.6.25 in rvm pkg
umbenannt.
Sie müssen zlib
installieren, bevor Sie Ruby kompilieren/installieren können. Wenn Sie dies nicht getan haben, entfernen Sie alles, was mit Ruby 1.9.1 zusammenhängt, aus Ihrem ~/.rvm
-Ordner (damit es von Grund auf neu erstellt wird).
Installieren Sie zlib
mit Ihrem bevorzugten Paketmanager:
Sudo apt-get install zlib1g-dev
Sie können auch die folgenden Pakete installieren, da sie von Tools wie OpenSSL benötigt werden.
Nokogiri, IRB oder SQLite:
libssl-dev libreadline6-dev libxml2-dev libsqlite3-dev
Dann installieren Sie Ruby 1.9.1 erneut (heutzutage würde ich vorschlagen, eine neuere Version zu verwenden):
rvm install 1.9.1
Achten Sie auf "Kompilieren ...". Das sollte eine Weile dauern. Wenn dies nicht der Fall ist, wird Ruby 1.9.1 möglicherweise immer noch zwischengespeichert
in Ihrem ~/.rvm
-Ordner.
Ich habe dieses Problem beim Versuch festgestellt:
gem install gruff
Was für mich tatsächlich funktionierte (Ubunut 10.10, Ruby MRI 1.8.7) ist:
Sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-libsqlite3-dev sqlite3 libxml2-dev autoconf
- rvm package install zlib
- rvm entfernen 1.8.7
- rvm installieren 1.8.7
Also im Grunde: folge einfach dem rvm-Handbuch
In der modernen Version von rvm wurde das Argument package durch das Argument pkg ersetzt.
Nun, um das zlib-Paket für rvm zu installieren, müssen Sie Folgendes tun:
rvm pkg install zlib
Auf dem neuesten Ubuntu (11.10) gibt es auch ein Problem mit readline.
Readline konnte nicht benötigt werden, wenn Sie einen Abschluss oder einen Verlauf benötigen installiere readline und installiere Ruby neu.
Mein kompletter Installationsprozess für rvm und den neuesten Ruby für ubunutu 11.10 war also:
# install rvm
Sudo apt-get install curl
curl -L get.rvm.io | bash -s stable
# install dependencies
rvm pkg install zlib
rvm pkg install readline
# install additional dependencies -- follow instructions for your distribution/version
rvm requirements
# install Ruby
rvm install [Ruby-version]
Ich poste dies für meine zukünftige Referenz und für den Fall, dass auch andere Personen auf dieses Problem stoßen.
Sie wissen auch, dass 1.9.1 schrecklich gebrochen ist, weshalb es nicht ernsthaft verwendet wird, richtig? Die Wichtigkeit, die dies für die Frage hat, ist, dass viele Leute dies nicht erkennen und versuchen, es mit APIs wie Ruby on Rails zu verwenden. Wie rubyonrails.org/download feststellt, wird Ruby 1.9.1 jedoch nicht für die Verwendung mit Rails unterstützt, da es broken ist.
Da Sie Fedora verwenden, versuchen Sie es mit:
yum install zlib-devel.i686
Versuchen Sie dann, Ruby 1.9.1 mit RVM zu installieren
rvm install 1.9.1
Für mich war die Lösung sehr einfach: Ich hatte vergessen, die Shell zu schließen/wieder zu öffnen, da das rvm-Setup mich dazu aufgefordert hatte .. Nachdem ich das getan hatte, war der zlib-Fehler weg und ich konnte: gem install bundler