簡體   English   中英

似乎無法“使用”RVM Ruby安裝

[英]Can't seem to “use” the RVM Ruby install

當我嘗試調用rails, rails -vrails -c時出現此錯誤:

/usr/lib/ruby/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
    from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:214:in `activate'
    from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:1082:in `gem'
    from /usr/bin/rails:18

我安裝了RVM,用它來安裝Ruby 1.9.3,然后切換到rvm use 1.9.3 --default

當我ruby -v

ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]

我也gem install rails --no-rdoc --no-ri並檢查... ls ~/ruby/gems/gems/

actionmailer-3.2.8/    journey-1.0.4/     rake-0.9.2.2/
actionpack-3.2.8/      json-1.7.5/        rdoc-3.12/
activemodel-3.2.8/     mail-2.4.4/        rubygems-bundler-1.0.7/
activerecord-3.2.8/    mime-types-1.19/   rvm-1.11.3.5/
activeresource-3.2.8/  multi_json-1.3.6/  sprockets-2.1.3/
activesupport-3.2.8/   polyglot-0.3.3/    sprockets-2.4.5/
arel-3.0.2/            rack-1.4.1/        thor-0.16.0/
builder-3.0.0/         rack-cache-1.2/    tilt-1.3.3/
bundler-1.1.5/         rack-ssl-1.3.2/    treetop-1.4.10/
erubis-2.7.0/          rack-test-0.6.1/   tzinfo-0.3.33/
hike-1.2.1/            rails-3.2.8/
i18n-0.6.0/            railties-3.2.8/

如果我echo $GEM_PATH

/home/flackend/.rvm/gems/ruby-1.9.3-p194:/home/flackend/.rvm/gems/ruby-1.9.3-p194@global

echo $PATH

/home/flackend/.rvm/gems/ruby-1.9.3-p194/bin:/home/flackend/.rvm/gems/ruby-1.9.3-p194@global/bin:/home/flackend/.rvm/rubies/ruby-1.9.3-p194/bin:/home/flackend/.rvm/bin:/usr/local/jdk/bin:/home/flackend/perl5/bin:/usr/kerberos/bin:/usr/lib/courier-imap/bin:/usr/lib64/ccache:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/usr/X11R6/bin:/home/flackend/.rvm/bin:/home/flackend/bin

cat ~/.bashrc

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

# User specific aliases and functions

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

cat ~/.bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

所以在某個地方有一條路徑可以看到系統Ruby安裝。 有任何想法嗎? 謝謝!


編輯

好吧,如果我切換回系統Ruby, rvm use systemrails -v ,我得到:

Rails 2.3.8

所以我根本不知道這個錯誤表明了什么。

您尚未完成rvm安裝。 您需要在.bashrc中的/ usr / bin之前添加〜/ .rvm bin路徑:

[[ -s "/Users/pftg/.rvm/scripts/rvm" ]] && source "/Users/pftg/.rvm/scripts/rvm".

要測試只檢查$ PATH env。 應該類似於:

/.../.rvm/gems/ruby-1.9.3-p125@global/bin:/.../.rvm/rubies/ruby-1.9.3-p125/bin:/.../.rvm/bin:/usr/local/bin

如果您安裝了ruby以及rails的所有內容,則可能需要通過執行以下操作選中“運行命令作為登錄shell”復選框,

  1. 打開終端
  2. 轉到編輯選項卡,然后從菜單項中選擇配置文件首選項。
  3. 應顯示“配置文件首選項”窗口,然后選擇“標題和命令”選項卡。
  4. 然后選擇復選框“運行”命令作為登錄shell。

我剛剛使用RVM創建了一個“gemset”,切換到它,並嘗試再次安裝Rails,它現在可以工作了。

https://rvm.io/gemsets/

我不確定為什么要修復它或為什么以前沒有工作。 我喜歡什么時候工作,但我寧願知道它為什么不能使用@global gemset。

感謝你的幫助!

我也有上面描述的確切症狀並且在這個問題上停留了很長一段時間(紅寶石環境和依賴性是一個可怕的混亂)。 我不能說我已經走出困境但至少我現在正在拿起正確版本的rails並且已經過了這個錯誤。

我相信這里的真正問題實際上與zlib有關。 看起來它是將你的系統版本的ruby(v1.8可能通過yum / apt-get安裝)與你需要的其他版本或通過rvm安裝的Ruby分離用於其他項目的關鍵組件。

如果您沒有安裝zlib,或者rvm沒有正確使用它,那么有時您會選擇系統ruby / rails並發生各種奇怪的錯誤。

如果有安裝的zlib(YUM /易於得到安裝的zlib)然后我發現了這個竅門是,我曾專門告訴RVM的zlib版本安裝Ruby時使用的。

rvm install 1.9.3 --with-zlib-dir = $ rvm_path / usr

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM