【发布时间】:2011-04-11 10:14:44
【问题描述】:
我在我的 Mac 上创建了一个新的用户帐户,我正在尝试从雪豹默认的 1.8.7 更新到当前版本的 ruby (1.9.2)。有人可以指点我教程或解释将我的 Mac 上的 Ruby 从 1.8 更新到 1.9.2 的最佳方法吗?谢谢
【问题讨论】:
标签: ruby macos installation
我在我的 Mac 上创建了一个新的用户帐户,我正在尝试从雪豹默认的 1.8.7 更新到当前版本的 ruby (1.9.2)。有人可以指点我教程或解释将我的 Mac 上的 Ruby 从 1.8 更新到 1.9.2 的最佳方法吗?谢谢
【问题讨论】:
标签: ruby macos installation
正如 The Tin Man 建议的那样(上图)RVM(Ruby 版本管理器)是升级的标准你在 OSX 上的 Ruby 安装:https://rvm.io
要开始,请打开一个终端窗口并发出以下命令:
\curl -L https://get.rvm.io | bash -s stable --ruby
(您需要信任 RVM 开发团队该命令不是恶意的 - 如果您像我一样是偏执企鹅 ,您可以随时阅读来源:https://github.com/wayneeseguin/rvm)完成后,您需要重新启动终端才能使rvm命令正常工作。
rvm list known
(向您展示 Ruby 的最新可用版本)
rvm install ruby-2.3.1
对于特定版本,后跟
rvm use ruby-2.3.1
或如果您只想要最新(当前)版本:
rvm install current && rvm use current
(安装当前稳定版本 - 在编写 ruby-2.3.1 时 - 请在新版本发布时更新此 wiki)
编译 Ruby 的注意事项:在我的情况下,我还必须安装 Homebrew http://mxcl.github.com/homebrew/ 来获得我需要的 gems (@987654324 @) 这反过来会强制您安装 Xcode(如果您还没有安装)https://itunes.apple.com/us/app/xcode/id497799835 AND/OR 从:https://github.com/kennethreitz/osx-gcc-installer 安装 GCC 包以避免错误运行“make”。
编辑:从 Mavericks 开始,您可以选择仅安装 Xcode 命令行工具而不是整个 Xcode 包,后者附带 gcc 和许多其他您需要的东西可能需要构建软件包。可以通过运行xcode-select --install 并按照屏幕提示进行安装。
错误提示:如果您在尝试此命令时收到错误“RVM 不是函数”, 访问:How do I change my Ruby version using RVM? 获取解决方案。
【讨论】:
使用 brew 这是一个单行:
(假设你已经点击了 homebrew/versions,这可以通过运行 brew tap homebrew/versions 来完成)
brew install ruby193
在 OS X 10.8.4 上为我开箱即用。或者如果你想要 2.0,你只需 brew install ruby
更一般地说,brew search ruby 向您展示了可用的不同存储库,如果您想获得真正具体的信息,您可以使用 brew versions ruby 并检查特定版本。
【讨论】:
我知道这是一篇较旧的帖子,但我想添加一些关于此的额外信息。
首先,我认为rvm 做得很好但是它没有从我的系统(MAC OS Yosemite)更新 ruby。
rvm正在做什么:安装到另一个位置并在那里设置我的环境变量的路径......我有点无聊,因为我的系统上现在有两个 ruby。
为了解决这个问题,我卸载了 rvm,然后使用可用的 Homebrew 包管理器 here 并通过执行 brew install ruby 安装了 ruby throw 终端命令。
然后,一切都运行良好! 我系统中的红宝石已更新! 希望对以后的冒险者有所帮助!
【讨论】:
rvm 还是brew。这有帮助。谢谢
我在这里不同意 The Tin Man。我认为rbenv 比 RVM 更可取。 rbenv 不会像 RVM 那样严重干扰您的 shell,它允许您在可以直接检查的普通文件夹中添加单独的 Ruby 安装。它允许您自己编译 Ruby。此处的差异概述:https://github.com/sstephenson/rbenv/wiki/Why-rbenv%3F
我提供了为 rbenv here 编译 Ruby 1.9 的说明。此外,更详细的信息here。我在 Snow Leopard、Lion 和 Mountain Lion 上轻松成功地使用了这种技术。
【讨论】:
Dan Benjamin 的 Hivelogic 文章 Installing Ruby, RubyGems, and Rails on Snow Leopard 是推荐的地方,虽然文章是针对 1.8 的,所以这里是 Ruby 1.9-specific install on Snow Leopard。注意 64 位的东西...要么全部使用 64 位“胖”(例如 OS X 上的 Apache,这可能会导致 32 位库出现问题),要么检查你可能的任何 gem用于确保它们适用于 64 位。
【讨论】:
这个命令确实有效
\curl -L https://get.rvm.io | bash -s stable --ruby
【讨论】:
如前所述,捆绑器版本对于您的 rails 版本可能太高了。
我在使用需要 Bundler v1.0.0 - v1.0.22 的 Rails 3.0.1 时遇到了同样的问题
使用以下命令检查您的捆绑程序版本:gem list bundler
如果您的捆绑程序版本不在适当的范围内,我发现此解决方案可行:rvm @global do gem uninstall bundler
注意:此解决方案需要 rvm...另一种情况说明您应该首先使用 rvm。
【讨论】:
还有其他几个版本管理器需要考虑,see for a few examples,还有一个我很快会尝试的未在其中列出的是ch-ruby。我尝试了 rbenv 但遇到了太多问题。 RVM 是我的支柱,尽管它有时会出现奇怪的问题(因此我希望有机会时尝试 ch-ruby)。我不会碰系统 Ruby,因为其他东西可能会依赖它。
我应该补充一点,我也多次编译了自己的 Ruby,如果您采用这条路线,那么使用 Hivelogic 文章(正如 Dave Everitt 所建议的那样)是一个好主意。
【讨论】: