Wo sind die Edelsteine, wenn Ruby kompiliert manuell in Mac OS X 10.6.8?
Ich manuell gebaut Ruby 1.9.2 auf Snow Leopard. Jetzt kann ich nicht finden, meine alten JUWEL-Dateien. Ich vermute, Sie sind in einem anderen Pfad oder so etwas. Also ich habe drei Fragen:
- Was ist das "alte" Juwel Pfad, wo
gem install sinatra
stellt die sinatra gem? - Was ist die "neue" Juwel Weg, der eingestellt ist, wenn ich Baue Ruby manuell?
- Wie kann ich es ändern, so Ruby findet meine Edelsteine wieder?
InformationsquelleAutor MrB | 2010-11-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eingabe
gem env
(Mit Ihrem alten Ruby installieren, ist der Befehl gem) an einer Eingabeaufforderung den Befehl gibt etwas ähnliches:(Auf Windows... ich kann mir vorstellen Snow Leopard wird ein ähnliches format)
Den GEM-PFADE-Feld ist die interessante Sache hier. Wenn Sie gehen, um diesen Verzeichnissen aufgeführt sind, sollten Sie einen Ordner mit dem Namen cache. Enthält eine Liste von .gem-Dateien entsprechend alle installierten gems in diesem speziellen Verzeichnis. Sie sollte nur in der Lage sein zu rufen
gem install *gemname*
auf den gem-Dateien (mit Ihren neue Ruby installieren, ist der Befehl gem).EDIT: Irrtümlich bezeichnet Installationsverzeichnis statt GEM PFADE. Greg erinnerte mich daran, dass es gibt mehrere Orte bekannt, die durch eine bestimmte installation von Rubygems. Alle diese Standorte muss überprüft werden, für Edelsteine verwendet, die installation von Ruby.
Windows Edelstein-Konfiguration ist nicht das gleiche wie Snow Leopard, da Apple konfiguriert die Standard-Speicherorte, und möchten Ihre eigenen Edelsteine, plus die Benutzer-Edelsteine, plus Benutzer -
sudo
Edelsteine. Nicht Microsoft gehören Ruby, so ist es der Ruby-installer für Windows, der bestimmt die Standorte.Unabhängig davon, wer bestimmt den Speicherort installieren, nicht Rubygems wissen, wo dieser Ort ist? Entschuldigt, wenn ich draußen bin mein Reich des Wissens hier; ich nahm an, Rubygems würde die gleiche Arbeit, die auf allen unterstützten Betriebssystemen.
Aus meiner Erfahrung, wenn mehrere Versionen von Ruby installiert, eines in
/usr/bin/ruby
, und eine in/usr/local/bin/ruby
Ergebnisse in separaten Anlagen, die Edelsteine. Es könnte sein, dass Sie sind gehalten, an der gleichen Stelle, aber gem konnte Sie nicht finden. Ich habe nicht die Mühe gemacht, herauszufinden, warum. Mit RVM es ist ein nicht-Thema.Wenn Sie die Installation einer weiteren version von Ruby, Sie werden sehen, dass die gems installiert haben, indem Sie es in einem anderen Weg, basierend auf Ruby-version. Der native Treiber installiert ist, indem Sie einige Edelsteine, die wahrscheinlich entgegen, die Fähigkeit zu kombinieren, alle installierten gems in einem Ordner.
InformationsquelleAutor jason.rickman
Ihre "alten" Schätze werden würde, der relativ zu dem Rubin, der kam gebündelt mit dem Mac, weil die
gem
Befehl enthalten ist, mit Ruby 1.8.7, das Lager auf Snow Leopard. Wenn Ihrwhich ruby
zeigt/usr/bin/ruby
, Ihr Edelstein-Umgebungen sollten ähnlich sein:Wenn Sie mit RVM Sie könnte in der Lage sein zu sagen, es zu kopieren Sie Ihre Edelsteine aus der
system
gemset zu einem unter RVM Kontrolle. Ich habe nicht versucht zu tun, wie ich es installieren RVM sofort und lassen Sie es handhaben alle meine Ruby-installation, und dann Ignoriere ich das system die installation.Wenn Ihr
which ruby
zeigt/usr/local/bin/ruby
dann diegem env
Befehl sollte spiegeln die geänderten Pfad für die version, die Sie aus den Sourcen übersetzt.Ich bin neugierig WARUM erstellen Sie es manuell, wenn
RVM
verfügbar ist, um alle die Konfiguration und installation und weitgehend entfernen Sie alle Bedenken über wo Dinge sind und ob Sie haben gerade stampfte auf dem system installierte version.Beim RVM installierten Ruby-version, es wird alles in
~/.rvm
und Ihre Schmuckstücke werden schön gelegen ist es auch. Sie werden in der Lage sein, um verwalten Sie die Edelsteine als gemsets, bezogen auf die einzelnen version von Ruby, und hin und her wechseln, sofort. Oder, noch besser, können Sie einen Befehl ausführen/Programm in jeder version von Ruby installiert haben, werden Sie, um Sie zu testen mitrvm ruby 'irgendein Befehl'
.Beachten Sie in der obigen
gem env
Ausgabe, die Edelsteine sind in drei separate Bereiche auf der Festplatte. Unter RVM control sind Sie in der RVM Sandkasten:Macht es sehr einfach für mich, um Sie zu sichern oder Blasen Sie Weg, wenn ich will.
Ich verwendet, um zu kompilieren meine Rubine aus der Quelle auf meinen Macs und Linux-Kisten. Ich benutze RVM für, die jetzt. Es ist so viel besser als es zu tun mit der hand.
InformationsquelleAutor the Tin Man
Glaube ich, dass die standard gem install Pfad auf OS X ist:
Eigentlich sind Sie in drei Standorten. Siehe meine Antwort für die Standardeinstellungen.
Viele Edelsteine von 1,8 sollte neu installiert werden, die unter 1.9.
InformationsquelleAutor Ole Begemann