Tôi muốn hạ cấp phiên bản Ruby tôi đã cài đặt (Ruby 1.9.2) trên Ubuntu 10.04 OS để tôi có thể sử dụng phiên bản thích hợp của Ruby 1.8.7 để chạy Rails 2.0.2. Tôi đang sử dụng phiên bản cũ hơn của Rails cho mục đích dự án.Cách hạ cấp từ Ruby 1.9.2 xuống Ruby 1.8.7 để chạy Rails 2.0.2
Nếu tôi đang sử dụng Rails 2.0.2 với Ruby 1.9.2, nó cho tôi một lỗi nói rằng không thể chuyển đổi Enumerator thành một mảng.
Tôi nghĩ mình có thể sử dụng rvm, nhưng tôi không chắc liệu nó có phù hợp để hạ cấp hay không.
tôi nhận được sau trong terminal khi tôi sử dụng lệnh list RVM biết
[email protected]:~$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p399]
[ruby-]1.8.6-head
[ruby-]1.8.7[-p302]
[ruby-]1.8.7-head
[ruby-]1.9.1-p243
[ruby-]1.9.1[-p376]
[ruby-]1.9.1-p429
[ruby-]1.9.1-head
[ruby-]1.9.2-preview1
[ruby-]1.9.2-preview3
[ruby-]1.9.2-rc1
[ruby-]1.9.2-rc2
[ruby-]1.9.2[-p0]
[ruby-]1.9.2-head
ruby-head
# JRuby
jruby-1.2.0
jruby-1.3.1
jruby-1.4.0
jruby-1.5.1
jruby-1.5.2
/home/mohnish/.rvm/config/known
tôi nhận được sau trong danh sách các gói ruby được cài đặt trên bằng cách sử dụng lệnh dpkg -l | grep ruby
[email protected]:~$ dpkg -l | grep ruby
ii libdbm-ruby 4.2 DBM interface for Ruby
ii libdbm-ruby1.8 1.8.7.249-2 DBM interface for Ruby 1.8
ii libgdbm-ruby 4.2 GDBM interface for Ruby
ii libgdbm-ruby1.8 1.8.7.249-2 GDBM interface for Ruby 1.8
ii libopenssl-ruby 4.2 OpenSSL interface for Ruby
ii libopenssl-ruby1.8 1.8.7.249-2 OpenSSL interface for Ruby 1.8
ii libreadline-ruby 4.2 Readline interface for Ruby
ii libreadline-ruby1.8 1.8.7.249-2 Readline interface for Ruby 1.8
ii libruby1.8 1.8.7.249-2 Libraries necessary to run Ruby 1.8
ii libtcltk-ruby 4.2 Tcl/Tk interface for Ruby
ii libtcltk-ruby1.8 1.8.7.249-2 Tcl/Tk interface for Ruby 1.8
ii rdoc 4.2 Generate documentation from ruby source file
ii ruby 4.2 An interpreter of object-oriented scripting
ii ruby-elisp 4.2 Emacs-lisp ruby-mode for Ruby
ii ruby-full 4.2 Ruby full installation
ii ruby1.8 1.8.7.249-2 Interpreter of object-oriented scripting lan
ii ruby1.8-dev 1.8.7.249-2 Header files for compiling extension modules
ii ruby1.8-elisp 1.8.7.249-2 ruby-mode for Emacsen
[email protected]:~$ ^C
Tôi có cần phải gỡ bỏ cài đặt của Ruby 1.9.2 và chỉ sau đó mới cài đặt của Ruby 1.8.7 hoặc tôi có thể chuyển đổi các phiên bản ?. Nếu tôi có thể chuyển đổi các phiên bản, hãy hướng dẫn tôi cách thiết lập đường dẫn từ Ruby 1.9.2 sang Ruby 1.8.7. Hoặc nếu có một số cách khác xin vui lòng cho tôi biết.
Nếu tôi phải gỡ cài đặt Ruby 1.9.2 và sau đó cài đặt Ruby 1.8.7 mới, vui lòng cho tôi biết cách tôi có thể thực hiện. Tôi đã thử các lệnh sau để gỡ cài đặt Ruby 1.9.2 nhưng có vẻ như không tìm thấy gói Ruby 1.9.2.
sudo aptitude remove ruby
sudo aptitude remove ruby 1.9.2p0
sudo purge ruby
sudo aptitude purge ruby 1.9.2p0
Khi tôi kiểm tra cho phiên bản hiện tại của Ruby cài đặt nó cho thấy:
[email protected]:~/Downloads/rubygems_postextract/rubygems-1.4.1$ ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]
[email protected]:~/Downloads/rubygems_postextract/rubygems-1.4.1$ which ruby
/home/mgj/.rvm/rubies/ruby-1.9.2-p0/bin/ruby
Nhờ sự giúp đỡ của bạn .. !!
+1 cho Zabba, một người rất hữu ích. – Tass
Có, Zabba và Wayne E. Seguin người thực sự đã viết RVM .. :) – DemitryT
sử dụng rvm có thể không hoạt động nếu không có '/ bin/bash --login' – t1gor