Hey guys! This is my first post here, and I've never studied computers
formally, so this is probably going to sound like a stupid question. I
installed Ruby 1.8 using Terminal on Mac OSX (Thank God for Visual
Quickstart Guides). But when I check the version with "ruby -v", it
still says that it's running version 1.6.2 or whatever. So I went
looking for it and sure enough, the new version didn't overwrite the old
one - it just set tself up next to it. So the shell just keeps on using
the old one.
I don't know what to do - do i just erase the old one and hope that the
shell starts using the new one instead? Or is there some kind of setting
i have to mess with?
Thanks in advance.
···
--
Posted via http://www.ruby-forum.com/.
I think by default ruby will be installed in /usr/local. The Apple supplied Ruby is in /usr, and you should not remove it, or overwrite it. Try setting your PATH variable to include /usr/local/bin first:
Bash:
export PATH=/usr/local/bin:$PATH
But for the long-term, you really should consider using DarwinPorts. It takes the pain out of installing software from source.
-- Daniel
···
On Mar 6, 2006, at 3:44 AM, superN00b wrote:
I installed Ruby 1.8 using Terminal on Mac OSX (Thank God for Visual
Quickstart Guides). But when I check the version with "ruby -v", it
still says that it's running version 1.6.2 or whatever. So I went
looking for it and sure enough, the new version didn't overwrite the old
one - it just set tself up next to it. So the shell just keeps on using
the old one.
Assuming that ruby is installed in /usr/local have your .login file or .bashrc have the following line:
PATH=/usr/local/bin:$PATH
···
On Mar 5, 2006, at 9:44 PM, superN00b wrote:
Hey guys! This is my first post here, and I've never studied computers
formally, so this is probably going to sound like a stupid question. I
installed Ruby 1.8 using Terminal on Mac OSX (Thank God for Visual
Quickstart Guides). But when I check the version with "ruby -v", it
still says that it's running version 1.6.2 or whatever. So I went
looking for it and sure enough, the new version didn't overwrite the old
one - it just set tself up next to it. So the shell just keeps on using
the old one.
I don't know what to do - do i just erase the old one and hope that the
shell starts using the new one instead? Or is there some kind of setting
i have to mess with?
Thanks in advance.
--
Posted via http://www.ruby-forum.com/\.
superN00b wrote:
Hey guys! This is my first post here, and I've never studied computers formally, so this is probably going to sound like a stupid question. I installed Ruby 1.8 using Terminal on Mac OSX (Thank God for Visual Quickstart Guides). But when I check the version with "ruby -v", it still says that it's running version 1.6.2 or whatever. So I went looking for it and sure enough, the new version didn't overwrite the old one - it just set tself up next to it. So the shell just keeps on using the old one.
I don't know what to do - do i just erase the old one and hope that the shell starts using the new one instead? Or is there some kind of setting i have to mess with?
Thanks in advance.
The version of Ruby that comes with OS X is installed in /usr/bin. The version you installed is (probably) in /usr/local/bin. You can confirm this by typing
which ruby
Anyway, all you need to do you change your $PATH environment variable to make /usr/local/bin precede /usr/bin. If you don't know how to do this, read the "bash" man page about the PATH environment variable. (See the INVOKATION section.)
Anyway, all you need to do you change your $PATH environment variable to
make /usr/local/bin precede /usr/bin. If you don't know how to do this,
read the "bash" man page about the PATH environment variable. (See the
INVOKATION section.)
OK. I looked it up, but all i found was this description:
PATH The search path for commands. It is a colon-separated list of
directories in which the shell looks for commands (see
COMMAND
EXECUTION below). The default path is system-dependent,
and is
set by the administrator who installs bash. A common
value is
``/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:.''.
So I know what it is, but where does it live? Do I change it with vi? Is
it a text file or part of a text file? Sorry, I really have zero idea
what I'm doing.
···
--
Posted via http://www.ruby-forum.com/\.
I like to use TextMate (www.macromates.com) and simply just save
a file in your home directory called .bash_profile
You would add something like this too it.
export PATH="/usr/local/bin/:$PATH"
But honestly, I thought /usr/local/bin was part of the default path, and ahh, I see below it is. Do you know where you installed ruby? If so, that it what you would put in your $PATH environment. BTW, if you do install DarwinPorts (which is a nice idea) then you will do something like this in your .bash_profile
export PATH="/opt/local/bin:$PATH"
export MANPATH="/opt/local/share/man:$MANPATH"
export INFOPATH="/opt/local/share/info:$INFOPATH"
···
On Mar 5, 2006, at 10:38 PM, superN00b wrote:
Anyway, all you need to do you change your $PATH environment variable to
make /usr/local/bin precede /usr/bin. If you don't know how to do this,
read the "bash" man page about the PATH environment variable. (See the
INVOKATION section.)
OK. I looked it up, but all i found was this description:
PATH The search path for commands. It is a colon-separated list of
directories in which the shell looks for commands (see
COMMAND
EXECUTION below). The default path is system-dependent,
and is
set by the administrator who installs bash. A common
value is
``/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:.''.
So I know what it is, but where does it live? Do I change it with vi? Is
it a text file or part of a text file? Sorry, I really have zero idea
what I'm doing.
--
Posted via http://www.ruby-forum.com/\.
You can change them with vi. if your shell is bash you need to add the above line
to the end of one of the following files;
~/.bashrc
~/.bash_login
~/.bash_profile
~/.profile
I would suggest ~/.bashrc
So at your shell prompt type:
vi ~/.bashrc
and add the lines:
PATH=/usr/local/bin:$PATH
export PATH
to the end of this file. You will need to open a new terminal window for these changes to take effect. Then to be sure it worked type:
ruby -v
And hopefully you should see the 1.8 version of ruby
···
On Mar 5, 2006, at 10:39 PM, superN00b wrote:
Logan Capaldo wrote:
On Mar 5, 2006, at 9:44 PM, superN00b wrote:
the old one.
Posted via http://www.ruby-forum.com/\.
Assuming that ruby is installed in /usr/local have your .login file
or .bashrc have the following line:
PATH=/usr/local/bin:$PATH
Sorry! Where can I find these files? I can change them with vi, right?
-- Posted via http://www.ruby-forum.com/\.
superN00b wrote:
Logan Capaldo wrote:
>
>> the old one.
>> Posted via http://www.ruby-forum.com/\.
>>
>
> Assuming that ruby is installed in /usr/local have your .login file
> or .bashrc have the following line:
>
> PATH=/usr/local/bin:$PATH
Sorry! Where can I find these files? I can change them with vi, right?
--
You should feel free to ask as many questions as you like to this list,
but you'll also need some unix-y background info, so I recommend the 2
Missing manuals, the "Learnign unix for Tiger" and maybe "Tiger for
Unix geeks" if you really get into it. All excellent books.
http://www.oreilly.com/pub/topic/mac
Also might want to look at darwin and fink for installing other
packages (as an alternative to tarballs, i.e. .tgz or .tar.gz files:
http://darwinports.opendarwin.org/
···
> On Mar 5, 2006, at 9:44 PM, superN00b wrote:
I don't believe it is actually, I don't have a default .bash_profile (or .profile, etc. I like zsh) and if I cat /etc/profile and /etc/bashrc:
% cat /etc/profile
# System-wide .profile for sh(1)
PATH="/bin:/sbin:/usr/bin:/usr/sbin"
export PATH
if [ "${BASH-no}" != "no" ]; then
[ -r /etc/bashrc ] && . /etc/bashrc
fi
## TeX modifications start at Tue Feb 14 15:11:35 EST 2006
## Do not remove the previous line
if [ `whoami` != "root" ]
then
PATH="$PATH:/usr/local/teTeX/bin/powerpc-apple-darwin-current"
export PATH
fi
## Do not remove the next line
## TeX modifications end at Tue Feb 14 15:11:35 EST 2006
% cat /etc/bashrc
# System-wide .bashrc file for interactive bash(1) shells.
if [ -n "$PS1" ]; then PS1='\h:\w \u\$ '; fi
# Make bash check it's window size after a process completes
shopt -s checkwinsize
I also note that i-Installer has decided to invade the system wide /etc/profile. That's a bad i-Installer! No cookie!
···
On Mar 5, 2006, at 10:43 PM, Ken Collins wrote:
But honestly, I thought /usr/local/bin was part of the default path, and ahh, I see below it is.