问题描述
在尝试使用rbenv安装ruby 2.7.1时,我注意到该版本未在我的ubuntu 18.04上列出
$ rbenv install -l | grep 2.7.
2.7.0-dev
2.7.0-preview1
jruby-9.2.7.0
rbx-2.71828182
解决方法
所以我找到了这个很棒的资源:here
在Linux上,您可能安装了ruby-build作为rbenv插件。更新很容易:
我检查了是否安装了ruby-build
$ ruby-build --version
ruby-build 20190615-7-g0e9094b
我检查了ruby-build是否与rbenv相关联,并检查了安装路径:
$ which ruby-build
/home/[username]/.rbenv/plugins/ruby-build/bin/ruby-build
git -C ~/.rbenv/plugins/ruby-build pull
如资源中所建议,这为我解决了这个问题。
当我尝试安装一个不存在的版本时,我也注意到该命令给出了相同的建议
$ rbenv install 2.7.7
ruby-build: definition not found: 2.7.7
See all available versions with `rbenv install --list'.
If the version you need is missing,try upgrading ruby-build:
git -C /home/[your_user]/.rbenv/plugins/ruby-build pull
,
如Chilianu Bogdan所述,rbenv
本身并不管理版本,而是通过ruby-build
完成的。如果您将其作为插件使用,git -C "$(rbenv root)"/plugins/ruby-build pull
确实应该可以使用。
如果没有plugins/ruby-build
目录,很可能ruby-build
已作为独立应用程序安装,并且您需要通过程序包管理器或源代码pull&reinstall进行升级