我遇到了以下问题,无论我尝试什么,都无济于事。我希望有人能帮助我。
我有一台 Redhat 服务器,我想在上面安装 Redmine。Redmine 需要 Ruby >= 1.8.7 才能运行,所以我安装了它,当我在控制台中执行 ruby -v 时,它显示我有版本 1.8.7(太好了)
[root@vms redmine]# ruby -v
ruby 1.8.7 (2008-05-31 patchlevel 0) [x86_64-linux]
但是当我尝试安装 Passenger gem 时,我需要在 Apache 上运行 redmine,它说我没有 ruby 1.8.7
[root@vms redmine]# gem install passenger
ERROR: Error installing passenger:
rake requires Ruby version >= 1.8.6
有人知道如何解决这个问题吗?
答案1
使用供应商构建的 ruby 包是一件令人沮丧的事情。
对于任何使用 ruby 的东西,使用起来都更容易右心室并构建虚拟环境。然后,您可以构建所需的内容,并拥有一个可以可靠复制的环境。此外,您不会最终破坏供应商的 Ruby 安装。
答案2
gem 是否与正确的 ruby 相关联? gem 可能使用 /etc/alternatives 系统,并且 gem 的符号链接可能指向较旧的 ruby(如果系统上安装了该 ruby)。如果它不使用 /etc/alternatives,则您的 gem 可能属于 RedHat 的较旧 ruby 软件包集,并且您需要为 1.8.7 软件包安装 rubygems 软件包。
你是如何安装 ruby 的?
哦,RedHat 是什么版本的?