Ich arbeite tatsächlich, um eine Ruby-Anwendung auf einem Server zu verwalten, der nicht auf dem neuesten Stand ist (Ubuntu 10.04.2 LTS). RVM ist global installiert, ich habe versucht, eine aktuelle Ruby-Version lokal, in meinem Home-Verzeichnis, ohne Erfolg zu erhalten. Und jetzt versuche ich es mit rbenv.Wie konfigurieren Bash-Umgebung mit Rbenv?
Ich habe gerade Ruby 2.3.1 mit rbenv & ruby-build installiert (als rbenv plugins). Die Installation funktionierte perfekt, aber nicht die Verwendung.
Die Installation (der einfache Teil):
$ rbenv install 2.3.1
Downloading ruby-2.3.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.bz2
Installing ruby-2.3.1...
Installed ruby-2.3.1 to /home/atlantic/.rbenv/versions/2.3.1
ich die Bash_profile aktualisiert haben, wie sie sagte:
$ cat .bash_profile
# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
Aber wenn ich will die environnement Menge environnement Parameter überprüfen verwenden globaler Pfad (wie GEM-Wege, ausführbares Verzeichnis, Installationsverzeichnis, ...):
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 2.5.1
- RUBY VERSION: 2.3.1 (2016-04-26 patchlevel 112) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/local/rvm/gems/ruby-2.0.0-p247
- USER INSTALLATION DIRECTORY: /home/atlantic/.gem/ruby/2.3.0
- RUBY EXECUTABLE: /home/atlantic/.rbenv/versions/2.3.1/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/rvm/gems/ruby-2.0.0-p247/bin
- SPEC CACHE DIRECTORY: /home/atlantic/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /home/atlantic/.rbenv/versions/2.3.1/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/local/rvm/gems/ruby-2.0.0-p247
- /usr/local/rvm/gems/[email protected]
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /home/atlantic/.rbenv/versions/2.3.1/bin
- /home/atlantic/.rbenv/libexec
- /home/atlantic/.rbenv/plugins/ruby-build/bin
- /home/atlantic/.rbenv/shims
- /home/atlantic/.rbenv/bin
- /usr/local/rvm/gems/ruby-2.0.0-p247/bin
- /usr/local/rvm/gems/[email protected]/bin
- /usr/local/rvm/rubies/ruby-2.0.0-p247/bin
- /usr/local/rvm/bin
- /usr/local/sbin
- /usr/local/bin
- /usr/sbin
- /usr/bin
- /sbin
- /bin
- /usr/games
Wenn ich das env sehe, gibt es viele env-Variablen, die auf die globale Ruby-Installation abzielen. Ich weiß nicht, von wo Thesen Variablen, die wir gesetzt sind, aber das ist nicht der Wert, den ich für sie will:
$ env |grep -i ruby
GEM_HOME=/usr/local/rvm/gems/ruby-2.0.0-p247
IRBRC=/usr/local/rvm/rubies/ruby-2.0.0-p247/.irbrc
MY_RUBY_HOME=/usr/local/rvm/rubies/ruby-2.0.0-p247
PATH=/home/atlantic/.rbenv/shims:/home/atlantic/.rbenv/bin:/usr/local/rvm/gems/ruby-2.0.0-p247/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-2.0.0-p247/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
GEM_PATH=/usr/local/rvm/gems/ruby-2.0.0-p247:/usr/local/rvm/gems/[email protected]
RUBY_VERSION=ruby-2.0.0-p247
Die rbenv Rubin Installation nie auf Thesen Variablen erscheinen. Habe ich einen Befehl (wie ein rbenv init-env-variables), um meinen ruby env korrekt zu konfigurieren?
Vielen Dank für Ihre Unterstützung, David
Erinnerst du dich an 'source ~/.bash_profile'? Überprüfen Sie auch Ihre .bashrc und sehen Sie, ob RVM etwas hinzugefügt hat. Alle deine Edelsteinpfade sind immer noch auf die RVM-Installation gerichtet. –
Ich habe /etc/profile.d/rvm.sh gefunden, die alle diese Variablen definieren. Lösche ich alle Variablen vor der Ausführung von rbenv init? Irgendein Rat ? – David