2010-09-13 66 views
2

我是一個Linux noob嘗試讓ruby,rails,mysql和sqlite在Ubuntu 10上很好地玩的。我遇到了錯誤,我意識到該版本是須藤與普通用戶不同!寶石 - 版本不同於sudo寶石 - 版本:(

[email protected]:~/.rvm/gems/ruby-1.9.2-p0$ gem --version 
1.3.7 
[email protected]:~/.rvm/gems/ruby-1.9.2-p0$ sudo gem --version 
1.3.5 

我用RVM安裝它,但似乎我有版本衝突。如何解決?

+1

關於RVM的好處之一是,你最有可能*永遠不需要以root用戶身份運行gem,因爲所有的gem都安裝在'〜/ .rvm'中。 – 2010-09-13 20:59:49

+0

我推薦閱讀RVM常見問題中的前兩項:http://rvm.beginrescueend.com/support/faq/ – 2010-09-14 03:50:44

回答

0

sudo gem --version最有可能是使用系統gem即你在做的時候得到的那個rvm system。這是因爲sudo將用戶改爲root用戶,而你可能沒有做sudo rvm use 1.9.2或類似的東西。試着做sudo which gemwhich gem來證實這一點。

您可以通過執行sudo gem update --system來更新root使用的版本。但是請注意,如果您未使用系統默認的可執行文件,例如rvm use system,則在使用sudo gemgem時,您仍然最喜歡使用不同的寶石路徑。

0

請嘗試

sudo which gem 

RESP

which gem 

得到你所使用的信息寶石。 我第二個the answer above的意見,很可能你使用不同的寶石版本和路徑。