如何切换到ruby1.9.3安装使用Homebrew?

我已经安装ruby1.9.3使用Hombrew

brew安装ruby

但仍然使用默认的1.8.7。 如何切换osx使用1.9.3作为默认的ruby?

我build议你看看rvm 。 你可以使用rvm use 1.9.3 --default将它设置为默认值

但是,如果你喜欢你的自制安装。

然后,只需改变PATH的目录的优先级

这是我的/ etc /path

 # homebrews should always take precedence /usr/local/bin # the default stack /usr/bin /bin /usr/sbin /sbin 

这一般对于自制软件很重要,否则系统版本的git,ruby,pg_admin,…都将被用来代替brew版本。

如果你说which -a ruby你会看到所有已安装的ruby,以及PATH的优先级

例如。

 $ which -a ruby /Users/matthew/.rvm/rubies/ruby-1.9.3-p0/bin/ruby /Users/matthew/.rvm/bin/ruby /usr/bin/ruby 

更新:我现在不认为你应该改变/etc/paths

相反,您需要检查.profile.bashrc.bash_login哪一个正在您的shell中加载,并将/usr/local/bin到您的path中。

对我来说,我只有一个.profile 。 如果您的主目录中没有这些文件,您可以创build该文件。

 # homebrews should always take precedence export PATH=/usr/local/bin:$PATH 

如果您想使用自制软件来安装1.9.3,您可以按照以下步骤操作:

 $ brew update $ brew install rbenv $ brew install ruby-build 

一旦你安装了rbenv和ruby-build,你可以运行以下命令来安装Ruby 1.9.3。

 $ rbenv install 1.9.3-p125 

现在如果你想默认使用1.9.3,你可以运行下面的命令:

 $ rbenv global 1.9.3-p125 

简答题:

通过自制软件安装ruby后,只需要这样做:

 brew link --overwrite ruby 

并重新启动或重新打开您的terminal


很长的答案

所以我使用自制软件正常安装了ruby

 brew install ruby 

安装很好,但它仍然使用系统的默认ruby。 我通过这样做来validation:

 which ruby #/usr/bin/ruby 

所以按照马修·鲁迪的build议,我检查了我的/ etc /path的顺序,一切都很好。

然后我决定做:

 which -a ruby #/usr/bin/ruby #usr/local/bin/ruby 

所以没有什么是如此破碎。 试图用自制方法再次重新安装ruby,然后我发现它。

自制软件提到:

 Warning: ruby-2.3.1 already installed, it's just not linked 

所以不得不这样做:

 brew link --overwrite ruby 

我有类似的情况。 我用自制软件安装了ruby。 which -a ruby给了我以下输出:

 #usr/local/bin/ruby #/usr/bin/ruby 

这意味着新安装的版本应该已经被使用了,但是ruby --version仍旧返回旧的系统版本。

我退出terminal(命令+ Q),并重新启动后, ruby --version返回正确。 因此,请确保在安装之后重新启动terminal,然后尝试其他任何(可能不必要的)修复。

在OSX中,您可以使用以下命令更改path:

sudo nano / etc /path

然后添加一个path或更改顺序。

就像其他人寻找答案的替代方法 – 你可以在你的.bash_profile中设置一个别名

 ruby="/usr/local/bin/ruby" 

这是我如何解决这个问题