Reputation: 11
I have two related questions that I was hoping someone could help out with.
I recently installed Ruby 1.9.2 on my Mac (running Snow Leopard 10.6.4) and I haven’t been able to figure out how to get Terminal to use the new Ruby as a default, rather than the factory-installed Ruby 1.8.7. The old Ruby 1.8.7 is located in my ~/usr/bin/ruby
directory while the new Ruby 1.9.2 is in ~/usr/local/bin/ruby
. Someone said that I need to put the new version of Ruby's directory in the PATH prior to the old version's directory so that the system looks there first - is this correct? If so, can anyone provide step by step instructions on how to do this?
I’ve created a new directory but can’t seem to figure out the correct way to add that directory to my PATH using the Terminal bash shell. I tried using the instructions that I found here (http://www.macgasm.net/2008/04/10/ad...thin-terminal/) twice but they didn't work for me. The directory containing my program ("Ruby_Programs") shows up in the PATH but when I try to run "ruby newprogram.rb" from the command line it results in ":ruby: No such file or directory -- newprogram.rb (LoadError)"
. The file definitely exists and is a functional Ruby program. I did change the name of the directory to "Ruby Programs" and then back to "Ruby_Programs" - could that have somehow caused this problem?
Any help would be greatly appreciated. Here is my current PATH:
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/sbrriffe/src:/usr/X11/bin:/Users/sbriffe/Ruby_Programs/:
Upvotes: 1
Views: 3736
Reputation: 35619
Your Ruby Programs directory shouldn't be in your path: the location of your ruby interpreter should be. Then, you cd
to the location of your ruby program, and run it from there: ruby program.rb
.
Since you are on a Mac, check out homebrew for something that will make installing software easier. I have my homebrew set up in /usr/local
, and it works great.
Once you have installed stuff where you need it, then you'll want to adjust your $PATH
. The items in $PATH
are searched in the order they appear, so in your ~/.bashrc
, you'll want to add:
export PATH=/usr/local/bin:$PATH
To make sure /usr/local/bin
gets searched before /usr/bin
.
Upvotes: 1
Reputation: 11
I would use RVM to get everything installed, and then once you have RVM installed it is easy to set your default Ruby version.
Check out https://rvm.io/ -- once you have that installed you can change your default by using : $ rvm use 1.9.2 --default
hope that helps- you can do this with any version, not only 1.9.2
Upvotes: 0