如何在 CentOS 5.3 上升级 ruby​​?

如何在 CentOS 5.3 上升级 ruby​​?

我有一台 CentOS 5.3 机器,我想运行 SASS。为此,我需要更新系统上的 Ruby 版本。我尝试了多种方法,但到目前为止都没有奏效(包括:如何在 CentOS 5.x 上更新 Ruby&在 CentOS 上安装带有 libyaml 的 Ruby 1.9.3

尝试更新后,当我运行时ruby -v,我仍然处于 1.8.5 版本。我重新启动了 Apache,整个机器……但无济于事。我本来打算卸载 ruby​​,但我读到的一些文章说不要这样做。

当我运行这些更新时,没有任何错误,一切似乎都安装正常。我确实尝试过这种方法如何在 CentOS 上设置 Ruby 和 RubyGems?这会导致如下错误file /usr/lib/ruby/1.8/yaml/types.rb from install of ruby-libs-1.8.7.352-5.el5.x86_64 conflicts with file from package ruby-libs-1.8.5-5.el5_4.8.i386

如何更新 ruby​​?

答案1

如果您按照这些说明进行操作make install,则很可能将新的 ruby​​ 放入 /usr/local/ 的某个位置。

运行时,ruby -v您很可能会碰到默认 ruby​​,它可能位于 PATH 中,比您的全新 ruby​​ 更靠前。检查echo $PATH一下它说了什么。

您也可以考虑使用 rvm 来管理不同的 ruby​​ 版本。

更新:

如果您不想使用 rvm,您至少应该使用包管理,并将 ruby​​ 1.9.3 安装为 rpm。似乎没有任何适合 ruby​​ 的良好存储库(尽管我只搜索了几分钟),但请查看以下说明:

https://github.com/imeyer/ruby-1.9.3-rpm

您可能需要先删除旧的 1.8 ruby​​。

答案2

我同意 cjc 的观点。此外,要找到新的 ruby​​ 二进制文件的位置,你应该可以使用以下命令:sudo updatedb located bin/ruby

相关内容