2009-02-26 4 views
2

Ich habe gerade Ruby Enterprise Edition installiert und installiere einige Edelsteine ​​dafür. Stock Ruby 1.8.6 ist ebenfalls auf dem Server installiert.Mit Ruby Enterprise Edition werden Edelsteine ​​nicht dort installiert, wo ich es erwarten würde

Ich habe /opt/ruby-enterprise-1.8.6-20090201/bin meine PATH einen Kopf /usr/bin wo ruby und gem Live hinzugefügt.

which gem bestätigt dies:

/opt/ruby-enterprise-1.8.6-20090201/bin/gem

Allerdings, wenn ich Edelsteine ​​wie folgt installieren:

gem install some_gem

Sie enden statt /opt/ruby-enterprise-1.8.6-20090201/lib/ruby/gems/1.8/gems/ in /usr/lib/ruby/gems/1.8/gems/ auf.

Aber wenn ich /opt/ruby-enterprise-1.8.6-20090201/bin/gem install some_gem es verwenden tut in REEs Edelstein Verzeichnis gehen.

Ich verstehe es nicht. Gibt es eine Konfigurationsoption, die ich ändern muss? I bin mit Sudo hier. Vielleicht hat das etwas damit zu tun?

Antwort

12

Es gibt eine gute Erklärung, was hier vor sich geht:

sudo changes PATH - why?

Dies setzt voraus, Sie Ubuntu verwenden. Sudo ändert den Pfad unter Ubuntu.

Der Edelstein, den Sie in/usr/bin/haben, ist wahrscheinlich ein Symlink zu /usr/bin/gem1.8. Was ich getan habe, war, das Rubin-Unternehmen-Juwel mit/usr/bin/ree-gem wie folgt zu verlinken:

sudo ln -s /opt/ruby-enterprise-1.8.6-20090201/bin/gem/usr/ bin/ree-gem

dann verwende ich nur:

sudo ree-gem some_gem

installieren Edelsteine ​​für ree speziell zu installieren. Wenn Sie nicht den Ruby 1.8.6 Rubygem verwenden, können Sie das REE-Juwel stattdessen mit/usr/bin/gem verknüpfen:

sudo ln -s /opt/ruby-enterprise-1.8.6-20090201/bin/ gem/usr/bin/gem

+0

Wow, sehr interessant! Ich benutze Ubuntu. Ich wusste nicht, dass Sudo auf Ubuntu den Pfad nicht änderte. Das ist Bizare. –

0

Eine Lösung, die ich zu einem ähnlichen Problem verwendet, besteht darin, einen Alias ​​für Ihren REE Gem-Befehl einzurichten.

I.e.

alias reegem='/opt/ruby-enterprise-1.8.6-20090201/bin/gem' 
0

Neben Jack Chu hilfreich Symlink oben, könnte ich vorschlagen:

sudo ln -s/opt/ruby-Unternehmen/bin/Rake/usr/bin/ree-Rake

so können Sie sudo ree-rake gems: installieren

Verwandte Themen