在Mac OS X上升级Ruby

18
我正在阅读《Programming Ruby》这本书,并且想要升级我的电脑上的 Ruby 版本。我使用的是 Mac OS X Snow Leopard 系统,在命令行中运行 ruby -v 命令显示我正在运行 Ruby 1.8.7。
我安装了 MacPorts 并运行了 sudo port install ruby19 命令,但无论何时我输入 ruby -v,它仍然显示 Ruby 1.8.7。
请问有人能帮忙解决吗?谢谢。

当您键入echo $PATH时会显示什么? - Andrew Grimm
我写了一篇关于如何在Mac OS X上更新Ruby到2.0版本的博客文章。http://www.iheinrich.com/wordpress/?p=154 - TheBigDuck
5个回答

22

这个工具“rvm”相当不错。据我所知,“rvm”代表Ruby版本管理器,而开发者在IRC频道中支持良好。您可以安装多个版本的Ruby并选择要使用的版本。

http://rvm.io


3
RVM是处理多个Ruby版本的最佳方式。如果您已经安装了Mac Ports,则应该拥有开发工具,因此请安装RVM,然后执行rvm install 1.9和rvm use 1.9 --default,这样您就可以开始使用了。它将处理所有路径和gems等内容,并将它们隔离在系统版本之外。 - Doon
我也使用并推荐rvm。我已经安装了1.8.7-head和当前的1.9.1版本,以及通常的系统版本Ruby,这使得运行和/或测试任何版本的代码变得容易。 - the Tin Man
谢谢!我一定会查看 rvm。 - Victor

3

如果您是通过安装ruby19的方式来运行Ruby,那么您必须使用它。您还可以使用irb19ri19


谢谢你的帮助!我进入了/opt/local/bin并发现它是ruby1.9。 - Victor

2

我在其中一个回答中更新了RVM的链接,但是对一些目前从事Ruby开发的朋友进行的快速调查表明,他们更喜欢使用rbenv作为Ruby环境管理器:http://github.com/sstephenson/rbenv/


1

正如hvgotcodes的回答中所提到的,RVM似乎是处理这个问题的好方法。

我最近也开始学习Ruby(和Rails),这个教程[1]有一个很棒的章节介绍了如何使用RVM。我强烈建议你试一试,它非常方便,可以让你在不同版本的Ruby上跟随不同的教程。

[1] http://railstutorial.org/book#sec:rubygems


0
正如@Andrew Grimm所暗示的那样,你遇到的问题很可能是由于$PATH变量出现了问题。由于macports通常将东西安装在/opt下,因此修改您的$PATH变量为:
$ export PATH=/opt/local/bin:$PATH

很可能会有所帮助。 但是,我建议您像@hvgotcodes建议的那样了解RVM。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接