Setting Ruby to version 1.9.3 as default in Mac OS X Lion
RVM (Ruby Version Manager) is a Ruby interpreter, version management tool. It enables you to switch between different versions and releases of Ruby (for instance, version 1.8.7, ruby enterprise edition) on the same machine, while associating different gems with each version of the ruby interpreter. If you want to play with Rails 3 and Ruby 1.9.x, and then want to switch back to your previous developed apps, which are running on Rails 2.3.x and Ruby 1.8.x, you can do so with a single command from the terminal.
1. Installing RVM and edit profile scripts
First, use the following bash script to install RVM:
$ bash << (curl -s https://rvm.beginrescueend.com/install/rvm)
Next you have to add rvm to your .bashrc profile
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
[[ -r $rvm_path/scripts/completion ]] && . $rvm_path/scripts/completion #rvm tab completion
And run the following command in terminal:
$ source ~/.bashrc
To check everything went well:
$ type rvm | head -n1
Should tell you “rvm is a function”
Now install openssl package and latest Ruby version (1.9.3):
$ rvm package install readline
$ rvm package install iconv
$ rvm package install zlib
$ rvm pkg install openssl
$ rvm install ruby-1.9.3 --with-readline-dir=$rvm_path/usr --with-iconvdir=$rvm_path/usr --with-zlib-dir=$rvm_path/usr --with-openssl-dir=$rvm_path/usr --with-gcc=clang
Ultimately, make sure that the system version of Ruby is ok:
$ ruby -v
That should return your system Ruby version, which as of this writing is 1.8.7 with Mac OS X Leopard and Mac OS X Lion.
ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10]
2. Set Ruby to default to version 1.9.3
Now, let’s use RVM to se the default Ruby interpreter to 1.9.3:
$ rvm use 1.9.3 --default
Now type ruby -v again and that should return version 1.9.3:
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]
You can also get back to where you started and revert to using your original Ruby setup (not using RVM) with a single command:
$ rvm system
Done. Have fun :)