我如何告诉系统将其中一个ruby构建ruby视为系统ruby?

我如何告诉系统将其中一个ruby构建ruby视为系统ruby?,ruby,Ruby,我没有在我的linux mint上安装任何ruby。相反,我使用安装ruby。我现在已经在中安装了ruby /opt/rubies/ruby-2.0.0-p0/ 例如,在apt-get-install ruby1.9.1期间,我如何使这个ruby安装成为“系统”ruby,就像apt-get-sets ruby可执行文件一样 我想将这个版本注册为SystemRuby,当我使用rubies与chruby(或rvm或rbenv)切换时,我想将其视为SystemRuby 我是否只是简单地使用更新替代方

我没有在我的linux mint上安装任何ruby。相反,我使用安装ruby。我现在已经在中安装了ruby

/opt/rubies/ruby-2.0.0-p0/
例如,在apt-get-install ruby1.9.1期间,我如何使这个ruby安装成为“系统”ruby,就像apt-get-sets ruby可执行文件一样

我想将这个版本注册为SystemRuby,当我使用rubies与chruby(或rvm或rbenv)切换时,我想将其视为SystemRuby


我是否只是简单地使用更新替代方案?我是否使用make从源代码重新安装ruby?请提供任何其他建议。

您可以在$path环境变量中向自定义ruby构建添加路径

export PATH="/my-build-path/bin:$PATH"

(或类似的东西)

如果您想要一个系统Ruby,请使用Ruby build将Ruby安装到/usr/local中:

$ ruby-build 2.0.0-p0 /usr/local/

如果我以前安装过ruby

sudo apt-get install ruby
然后apt进程设置了备选方案,这样我就有了ruby组的条目

/usr/bin/ruby -> /etc/alternatives/ruby
$ sudo update-alternatives --install /usr/bin/ruby ruby /opt/rubies/ruby-2.0.0-p0/bin/ruby 1
现在,我可以简单地将自己的ruby安装添加到ruby组中

/usr/bin/ruby -> /etc/alternatives/ruby
$ sudo update-alternatives --install /usr/bin/ruby ruby /opt/rubies/ruby-2.0.0-p0/bin/ruby 1
设置或配置选项,指向我想要的ruby

$ sudo update-alternatives --set ruby /opt/rubies/ruby-2.0.0-p0/bin/ruby
# or sudo update-alternatives --config ruby
# and select the entry I want
以上我只能在ruby安装期间apt get设置了原始备选方案之后才能执行

但是,如果我没有安装带有apt-get的ruby,那么即使我还没有/etc/alternations/ruby,我也可以使用相同的机制

我只是做下面的事情

$ sudo update-alternatives --install /usr/bin/ruby ruby /opt/rubies/ruby-2.0.0-p0/bin/ruby 1
此外,我可能还想添加宝石


我不确定的是,这对安装的gems有何影响

这不是一个直接的答案(因此,请发表评论),但您是否考虑过使用?我使用chruby进行切换。我认为无论您使用rvm、chruby还是rbenv,这个问题都是有效的。我只想将一个红宝石设置为默认系统rubyha!但是我已经在/opt/rubies/中安装了它,因为我很懒,所以我不想重新安装。一定有办法。。。一种可能的方法是使用updatealternations/usr/bin/ruby/opt/rubies。。。。但是,我在备选方案系统的ruby组中没有条目。。。所以我很好奇我如何才能做到这一点。