2010-11-17 134 views
5

我花了字面上天嘗試安裝Ruby 1.9.2,並把它與寶石的工作所需的庫: - /我最終放棄了我的Mac OSX 10.6機器上,並且下面是當前狀態在我的Ubuntu機器上。任何建議將不勝感激!紅寶石找不到即使安裝寶石

# ruby test.rb 
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- mongo (LoadError) 
from <internal:lib/rubygems/custom_require>:29:in `require' 
from test.rb:1:in `<main>' 
# cat test.rb 
require 'mongo' 
db = Mongo::Connection.new.db("mydb") 
# gem which mongo 
/usr/local/rvm/gems/ruby-1.9.2-p0/gems/mongo-1.1.2/lib/mongo.rb 
# cat /etc/lsb-release 
DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=10.10 
DISTRIB_CODENAME=maverick 
DISTRIB_DESCRIPTION="Ubuntu 10.10" 

根據此頁:http://docs.rubygems.org/read/chapter/19 我符號鏈接這紅寶石我用,以匹配其寶石使用:

# which ruby 
/usr/local/rvm/bin/ruby 
# ls -l `which ruby` 
lrwxrwxrwx 1 root root 44 2010-11-17 13:25 /usr/local/rvm/bin/ruby -> /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby 
# gem env | grep 'RUBY EXECUTABLE' 
    - RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby 
# which gem 
/usr/local/rvm/bin/gem 
# gem -v 
1.3.7 
# ruby -v 
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux] 
+0

gadol :-D對不對? – 2010-11-17 18:56:03

+0

對不起,我不熟悉這個詞。這是你的意思:http://en.wikipedia.org/wiki/Gadol? – John 2010-11-17 19:00:28

回答

2

爲什麼 「RVM」 你/usr/local/rvm/路徑顯示?您是否使用administering Ruby system wide作爲系統管理員用於多個用戶,從而進行系統範圍的安裝?

您是否已將[[ -s '/usr/local/lib/rvm' ]] && source '/usr/local/lib/rvm'添加到您的~/.bashrc,~/.bash_profile~/.profile(無論哪個配置)?

對於正常,每天使用,我推薦RVM的默認設置: RVM installation,RVM gems management

給自己的注意事項:在RVM中購買股票。太酷了。

6

嘗試把下面的行開頭

require "rubygems" 
+1

這在Ruby 1.9.2中並不需要,他正在運行它。 – 2010-11-17 23:59:43

1

它是否在Ruby 1.8.7下工作,它在OS X上預先默認安裝?

如果是這樣,則1.9.1和1.9.2之間的一個差異是"."不再是$:的路徑的一部分。

0

在Linux和OS X,我一直把需要在一開始「RubyGems的」。然而,它一直工作得很好,沒有這條線在Windows上。

+0

在Ruby <1.9中需要'rubygems'。它現在在1.9+以上自動完成。 – 2010-11-17 23:40:41

1

我建議你做rvm implode並刪除當前的設置。然後使用railsready腳本在Ubuntu上爲您正確設置RVM和Ruby。理解這點很重要,除非你知道自己在做什麼,否則應該以用戶身份運行腳本。希望有所幫助。