安装ruby gem后,运行新gem会返回“找不到”错误

新鲜的Ubuntu 10.04安装:

我在让我的gem安装过程很好地完成时遇到了一些麻烦。 每当我安装一个gem时,它都会经历一个简单明了的过程而没有任何问题:

$ gem install rails Successfully installed rails-3.2.2 1 gem installed 

然后validation版本,也许是一个简单的“rails -v”? 不:

 $ rails -v /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError) from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec' from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem' from /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails:18:in `' 

所以让我们确保安装了铁路:

 $ gem install railties Successfully installed railties-3.2.2 1 gem installed 

并尝试再次获得rails的版本:

 $ rails -v /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError) from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec' from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem' from /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails:18:in `' 

我安装的几乎所有gem都会发生这种情况 我试着搜索某些有关如何使用gem安装内容的文档,但找不到任何内容。 似乎有些gem安装在一个位置,有些gem安装在另一个位置,其中一个位置不在我的路径中。 有什么想法在这里发生了什么?

编辑:请求的信息:

 RubyGems Environment: - RUBYGEMS VERSION: 1.8.17 - RUBY VERSION: 1.9.3 (2012-02-16 patchlevel 125) [x86_64-linux] - INSTALLATION DIRECTORY: /home/pragone/.rvm/gems/ruby-1.9.3-p125 - RUBY EXECUTABLE: /home/pragone/.rvm/rubies/ruby-1.9.3-p125/bin/ruby - EXECUTABLE DIRECTORY: /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin - RUBYGEMS PLATFORMS: - ruby - x86_64-linux - GEM PATHS: - /home/pragone/.rvm/gems/ruby-1.9.3-p125 - /home/pragone/.rvm/gems/ruby-1.9.3-p125@global - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - "gem" => "--no-ri --no-rdoc" - REMOTE SOURCES: - http://rubygems.org/ 

和rvm信息:

 system: system: uname: "Linux domU-12-31-39-0A-34-6E 2.6.32-311-ec2 #23-Ubuntu SMP Thu Dec 2 11:14:35 UTC 2010 x86_64 GNU/Linux" bash: "/bin/bash => GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu)" zsh: " => not installed" rvm: version: "rvm 1.10.3 by Wayne E. Seguin , Michal Papis  [https://rvm.beginrescueend.com/]" updated: "2 hours 40 minutes 7 seconds ago" homes: gem: "not set" ruby: "not set" binaries: ruby: "/usr/bin/ruby" irb: "/usr/bin/irb" gem: "/usr/bin/gem" rake: "/home/pragone/.rvm/bin/rake" environment: PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/pragone/.rvm/bin" GEM_HOME: "" GEM_PATH: "" MY_RUBY_HOME: "" IRBRC: "" RUBYOPT: "" gemset: "" 

另外,通过上面列出的PATH,我在尝试运行rails时得到了这个:

 The program 'rails' is currently not installed. You can install it by typing: sudo apt-get install rails 

但是,当我在黑客攻击时将上述错误添加到我的路径中时发生了上述错误:

 /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin /home/pragone/.rvm/gems/ruby-1.9.3-p125/gems 

我已经尝试重新运行〜/ .rvm / scripts / rvm,但它似乎没有为我的PATH添加正确的路径。 我还做了一些工作安装(我的macbook pro,运行os x 10.7),并validation了〜/ .rvm / scripts / rvm在工作安装中将项目添加到我的PATH,但没有在ubuntu盒子。

which rails :黑客路径:

 $ which rails /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails 

which rails :新路径:(没有回应;可能没找到)

 $ which rails $ 

似乎缺少的链接是

 $ rvm use ruby-1.9.3-p125 --default 

好像已经修好了。

PS:谢谢你看这个。 为了你的娱乐,如果你还没有在HN上看到它(这是python,但仍然是一个很好的笑声): https : //gist.github.com/289467

试试这个,它对我有用:

gem update –system