RVM/rbenv 安装的 gem 都 Gem::LoadError

yesmeck · 2012年07月09日 · 最后由 RainFlying 回复于 2012年09月09日 · 4891 次阅读

系统是 Arch Linux,按照官网说明装下来没有问题:

$ curl -L https://get.rvm.io | bash -s stable --ruby
$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"' >> ~/.zshrc
$ source ~/.zshrc
$ rvm use 1.9.2 --default

但是自此后安装的 gem 都是 Gem::LoadError

$ gem install v2ex
$ v2ex
/home/xxx/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find v2ex (>= 0) amongst [] (Gem::LoadError)
    from /home/xxx/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /home/xxx/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/rubygems.rb:1231:in `gem'
    from /home/xxx/.gem/ruby/1.9.1/bin/v2ex:22:in `<main>'

或者这样也一样 $ rvm 1.9.2 do gem install huami

另外$ gem list是空的:

$ gem list

*** LOCAL GEMS ***




换用系统上的 Ruby $ rvm use system 就不会有这个问题。 是我漏了什么吗?

Could not find 是找不着这个 v2ex 这个 gem,其他的 gem 也是这样么?。 gem sources 一下看看源是哪里,说不定撞墙了,可以用 footer 下面这个 @huacnlee 做的国内 Gems 镜像。

终于好了,把 ~/.gemrc 里的 gem: --user-install 去掉就好了。。。。

不过还是不清楚具体原因是什么。。。。:trollface: 这个坑困扰我好几个月啊,终于爬出来了。😢

我的 .gemrc

:bulk_threshold: 1000 :update_sources: true :backtrace: false :verbose: true :sources:

@loddit 确实你也没有 gem: --user-install 这个设置。 会不会是跟我用 Zsh + oh-my-zsh 有关系。。。

Arch 下好像在 /etc/gemrc 下在就有 gem: --user-install 这个配置的。

PS,我好像没有用 RVM

按照官网和 stackoverflow.com 上的说法 RVM 不能很好地跟 on-my-zsh 相处。。

Gentoo + Oh-My-ZSH + RVM + RVM 安装的 Ruby 和 Rails 完全一点问题都没有。

不过 Gentoo 比较坑爹的是在 /etc/env.d/10rubygems 里设置了 RUBYOPT 变量, 这个变量会导致 gems 会有问题。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号