如何安装Ruby> = 2.1.9?


9

我尝试过,sudo apt-get install ruby但是它将安装Ruby 2.1.5。

如何安装版本> = 2.1.9?

Answers:


6

Raspbian仓库中有一个ruby 2.3软件包,但是由于apt show ruby在“ jessie”系统上显示2.1,所以我认为这是一个“ stretch”软件包-即,当前测试/不稳定分支的一部分。

但是,我ldd在上面运行,libruby2.3仅它们本身就没有jessie所不具备的任何要求,因此您可以通过以下方式安装它们:

  1. 编辑/etc/apt/sources.list并添加一行:

    deb http://archive.raspbian.org/raspbian/ stretch main
  2. 运行apt get update; 可能需要一段时间。

然后尝试apt install ruby2.3。这应该可以工作,但是发行版中可能存在红宝石2.3宝石,这需要对系统进行全面升级才能延伸。我有一个pi几个月前就做过,现在还不错,但是我不使用ruby,仅将pi用于特定的事情,因此请记住,全面升级到测试可能(但很可能不会)在并发症中。

以这种方式升级可能还会使使用发行宝石更加复杂-再次,我不是红宝石用户,所以我不再赘述这种可能性。可能使用它自己的软件包管理系统来安装ruby模块,并且不会apt绕开它。尽管apt最终可能还是想要偶尔安装一些依赖项,但使用它们时不应优先。

在某些情况下,使用gem相反会要求您apt install -dev打包要针对模块进行编译的内容,并且其中可能有少数根本无法使用。

Debian(以及Raspbian)对版本控制有一个保守的政策,这意味着他们宁愿远离稳定分支(目前是jessie)的前沿,但也要保持一个相当稳定的“不稳定/测试”分支(拉伸)-或曾经有过一段时间,现在已经有了。

所以我的建议是继续努力。您现在已经意识到了警告,当然您应该无论如何都要备份重要数据,因此可能没有太大的风险。


感谢,但我没有看到sources.list /etc/apt/sources.list.d,只是有raspi.list。您是说我需要制作一个新文件吗?
Trevor

1
抱歉,应该已经/etc/apt/sources.list[在上面修复]。我不确定使用一种与另一种的相关性(如果有的话),但sources.list绝对可以。
goldilocks

好的,它运作良好。
Trevor

4

使用Raspbian Stretch(9.4)在RPi3上安装Ruby


有两种方法可以在RPi上安装ruby:

  1. 安装ruby2.3APT软件包。
  2. 使用官方的RVM安装方法。

(1)使用APT安装

sudo apt-get install ruby2.3

这还将安装其他依赖项:

libruby2.3 rake ruby ruby-did-you-mean ruby-minitest ruby-net-telnet
ruby-power-assert ruby-test-unit ruby2.3 rubygems-integration

但是,众所周知,Raspbian发行版维护人员喜欢保留版本发布,因此与可用软件包相比,该软件包很可能已经过时了。要获得最新(甚至开发人员)版本,请使用下面的RVM方法。


(2)使用RVM安装

什么是RVM?

红宝石版本管理RVM)是一个命令行工具,它可以让你轻松地安装,管理和工作与多个Ruby环境从译员台宝石。

在RPi上安装Ruby 的正确方法是遵循以下位置之一的指示:

  1. rvm.io网站
  2. rvm GitHub网站

无论哪种方式,都要求您像这样从curl响应输出中直接运行脚本。
不要使用sudo!

\curl -sSL https://get.rvm.io | bash -s stable --ruby

但是,出于明显的安全原因,通常不建议这样做,因为您不知道发生了什么或正在发生什么!

因此,请执行以下操作。

cd ~/Downloads/
\curl -sSL https://get.rvm.io -o rvm-installer
# ^^ That actually resolve to:
# curl -sSL https://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer -o rvm-installer

chmod 755 rvm-installer
./rvm-installer

Downloading https://github.com/rvm/rvm/archive/master.tar.gz
Installing RVM to /home/pi/.rvm/
    Adding rvm PATH line to /home/pi/.profile /home/pi/.mkshrc /home/pi/.bashrc /home/pi/.zshrc.
    Adding rvm loading line to /home/pi/.profile /home/pi/.bash_profile /home/pi/.zlogin.
Installation of RVM in /home/pi/.rvm/ is almost complete:

  * To start using RVM you need to run `source /home/pi/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

. /home/pi/.rvm/scripts/rvm
rvm list

# No rvm rubies installed yet. Try 'rvm help install'.

rvm list known

# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.7]
[ruby-]2.4[.4]
[ruby-]2.5[.1]
[ruby-]2.6[.0-preview1]
ruby-head
...

不幸的rvm-installer help是没有显示最有用的隐藏选项之一:rvm-installer stable --ruby

另外,如前所述,当您运行rvm-installer时,已修改以下文件以添加一些与rvm相关的新内容。

~/.profile
~/.mkshrc
~/.zshrc
~/.bash_profile
~/.zlogin
~/.rvm/scripts/rvm

如果您不喜欢这样,请确保将--ignore-dotfiles选项传递给rvm-installer。如果这样做,则需要手动执行此操作:

echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile

接下来,我们检查实际推荐的稳定Ruby版本:https :
//www.ruby-lang.org/en/downloads/

rvm install ruby-2.5.1 --binary         # this binary doesn't exist!
date; time rvm install ruby-2.5.1 -j 4  # we compile with 4 threads, 
                                        # this take ~XX min on a RPi3 

完成后,我也可以完成此答案...

这里的要点是rvm,一旦创建了二进制文件,它似乎更加易于使用。为什么这些尚未为RPi3广泛使用,这似乎很疯狂。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.