通过apt安装ruby 2.2.3


16

如何在Ubuntu Wily上通过apt安装Ruby 2.2.3?我尝试了sudo apt-get install ruby2.2-devsudo apt-get install ruby2.2(有什么区别,顺便说一句),两个命令似乎都安装了很多。但是,此后没有ruby可执行文件。


您是否绝对要通过apt安装ruby 2.2.3?* -dev软件包包含*可能需要正确运行的标头和文件。检查官方ruby-lang.org,其中包含正确安装ruby 2.2.3所需的信息
enzo

请参考是否有用[ gorails.com/setup/ubuntu/15.10]
Ravan

1
@maetsoh为什么我要用apt安装每个单独的软件包,除了 ruby?我喜欢包裹经理。
马歇尔·德·马雷

Ruby是Ubuntu上“替代”机制的一部分吗?如果没有,那么使用rbenv之类的东西来管理Ruby安装可能是值得的。特别是如果您需要同时使用不同版本的Ruby。软连接可以得到一点点讨厌做Rails开发等时

我在本地使用rbenv来切换版本,所以这很麻烦。但是在生产中我只需要1个ruby版本,然后我更喜欢标准软件包管理器。我将阅读“替代”机制。(manpages.ubuntu.com/manpages/vivid/en/man8/...
米希尔·德马

Answers:


7

apt-get install ruby2.2确实为您提供了一个ruby可执行文件-它只是被称为ruby2.2。宝石和irb相同(即gem2.2 install bundler会起作用,irb2.2会提示您irb)。

在Ubuntu中这是正常现象,替代系统通常意味着您不必关心它,但是无论出于何种原因,在Ubuntu中都不由替代产品管理ruby。但是我们可以做到:

sudo update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby2.2 400 \
 --slave /usr/bin/rake rake /usr/bin/rake2.2 \
 --slave /usr/bin/ri ri /usr/bin/ri2.2 \
 --slave /usr/bin/rdoc rdoc /usr/bin/rdoc2.2 \
 --slave /usr/bin/gem gem /usr/bin/gem2.2 \
 --slave /usr/bin/irb irb /usr/bin/irb2.2 \
 --slave /usr/share/man/man1/ruby.1.gz ruby.1.gz /usr/share/man/man1/ruby2.2.1.gz \
 --slave /usr/share/man/man1/rake.1.gz rake.1.gz /usr/share/man/man1/rake2.2.1.gz \
 --slave /usr/share/man/man1/ri.1.gz ri.1.gz /usr/share/man/man1/ri2.2.1.gz \
 --slave /usr/share/man/man1/rdoc.1.gz rdoc.1.gz /usr/share/man/man1/rdoc2.2.1.gz \
 --slave /usr/share/man/man1/gem.1.gz gem.1.gz /usr/share/man/man1/gem2.2.1.gz \
 --slave /usr/share/man/man1/irb.1.gz irb.1.gz /usr/share/man/man1/irb2.2.1.gz

运行此命令会将红宝石注册到替代系统,并且由于只有一种选择,因此将其设置ruby 2.2为默认值。这将创建符号链接,并允许您使用ruby/ gem/等,而无需在末尾添加2.2。

这是在https://leonard.io/blog/2012/05/installing-ruby-1-9-3-on-ubuntu-12-04-precise-pengolin/上找到的说明的稍有更新的版本。


更新替代品:错误:替代宝石不能成为红宝石的奴隶:它是主要替代品
Yevgen Kulik

17

好的,这至少对我有用:

sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.2 ruby2.2-dev

在wily上,我收到一个错误消息,因为URL http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/wily/main/binary-amd64/丢失了,只有http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/devel/main/binary-amd64/


同样在debian jessie上:/
holms
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.