问题描述
我想使用 RVM 下载最新的 Ruby 版本(版本 3.0.0),但在运行 rvm install 3.0.0
时遇到以下错误:
UnkNown ruby interpreter version (do not kNow how to handle): 3.0.0
我也试过 3
和 3.0
,但出现同样的错误。
根据this page,它应该可以通过 RVM 获得。我已经在使用 RVM 来管理我的 ruby 版本,所以我不想使用 rbenv
...也不想从源代码安装。
如何使用 RVM 安装 Ruby 版本 3.0.0
?
解决方法
如果您还没有更新 rvm,请先更新 RVM Upgrading
rvm get stable
# or
rvm get master # for even newer versions not in stable 3.0.0 in this case
要查看所有可用的红宝石运行
rvm list remote all
# or
rvm list known # as pointed out in the comments
您应该在可用红宝石列表中看到 ruby-3.0.0
然后运行
rvm install ruby-3.0.0
,
在世界上的许多地方,当前时间是假期。 RVM 由无偿志愿者在业余时间维护,他们可能会选择与家人共度时光。
因此,RVM 的新版本可能需要一段时间才能发布。
此外,还有一些与 YARV 3.0.0 相关的错误无法在 RVM 错误跟踪器上运行,显然这些错误需要在支持 YARV 3.0.0 的新版 RVM 发布之前修复。
> ,根据 RVM offline installation docs,安装任何 Ruby 版本所需的扩展程序是 .tar.bz2
。
看一下 at the Ruby's 3 FTP folder,.tar.bz2
仅适用于 preview1
版本。 rc1
和官方都没有该扩展程序可用。
我认为我们必须等待一些维护者使用该扩展名更新 FTP 文件夹。
,您只需将 .tar.gz 文件重命名为 .tar.bz2,一切都会正常进行。步骤如下:
-
如之前的回答所述,将 rvm 更新到最新的稳定版本:
rvm get stable
-
从以下位置下载 3.0.0 版 gz 文件:https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz
-
将下载的文件移动到您的 .rvm/archives 文件夹中,并在此过程中将其重命名为 .bz2:
mv ~/Downloads/ruby-3.0.0.tar.gz ~/.rvm/archives/ruby-3.0.0.tar.bz2
-
确保您至少安装了 gcc v8 或更新版本。由于 Ruby 3 的多线程并发特性,这是必需的。我使用了 gcc-10,它在我的 Mac 上安装了 Homebrew。如果您确实使用较新版本的 gcc,则需要设置 CC 环境变量:
export CC=gcc-10
-
一切就绪后,照常安装,它会自动在您的存档文件夹中找到合适的 .bz2 文件:
rvm install ruby-3.0.0
首先您需要升级 RVM。然后再次尝试安装所需的版本 ->
rvm get master && rvm install 3.0.0