
[Debian擠壓]
要找到這個問題的答案出乎意料地困難。
我安裝了ruby v1.9.1 (/usr/bin/ruby1.9.1),但在安裝ruby v1.9.1 (/usr/bin/ruby1.9.1),但在安裝ruby v1.8),以及我在gem 上執行的所有指令(gem install ...、rails ...)都使用ruby v1.8。
~/proj/rails/demo# bundle show sqlite3
/var/lib/gems/1.8/gems/sqlite3-1.3.4
如何讓 rubygems 和 Rails 使用我安裝的 v1.9.1,而不是 v1.8?
(附註:我確實使用“gem install rvm”安裝了rvm,但是在我這樣做之後,我無法執行rvm,這是怎麼回事?)
答案1
您更新了 /etc/alternatives 嗎?在 ubuntu 方面,您可以運行“sudo update-alternatives”,並告訴系統“/usr/bin/ruby”、“/usr/bin/gem”等的符號連結實際上指向什麼。我不確定 Debian 中是否有“update-alternatives”,但應該有類似的方法來指向您想要的版本。
唔。這有點舊,但可能適用:
http://kangaroobox.blogspot.com/2009/12/switching-ruby-platforms-on-debian.html
答案2
在 Debian 上,該rubygems
軟體包只是一個依賴 的元軟體包rubygems1.8
,同樣的方式ruby
也僅依賴ruby1.8
。因此,如果您想要 1.9 版本的 rubygems,則需要安裝rubygems1.9
.該gem
命令(與所有其他潛在的可執行文件一樣,如ruby
,irb
或ri
)只是指向首選版本的符號鏈接,如gem1.8
.您可以直接使用它們,也可以用於update-alternatives
設定首選版本。
關於 RVM,確實有一個 gem,但它只包含 RVM 的一些助手。 RVM 不需要預先安裝 ruby。事實上,它通常被用作在系統上安裝 ruby 的唯一方法。
若要實際安裝 RVM,請執行
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
如上所述RVM的安裝指南。請參閱它以獲取有關各種安裝變體的更多資訊。
答案3
你需要使用RVM(Ruby Version Manager),它可以輕鬆切換Ruby版本。
若要切換到 Ruby 版本 1.9.1,請嘗試
rvn use 1.9.1
若要將此版本設為預設版本,請使用
rvn use 1.9.1 --default
如果您需要了解 RVM 的基礎知識,請按照本教學進行操作,其中解釋了有關如何使用 RVM 的更多詳細資訊。