【问题标题】:Unable to install nokogiri using rvm, receiving "nokogiri requires Ruby version >= 1.9.2"无法使用 rvm 安装 nokogiri,收到“nokogiri 需要 Ruby 版本 >= 1.9.2”
【发布时间】:2013-07-01 13:49:44
【问题描述】:

如果我尝试安装 nokogiri,我会收到以下错误:

rvmsudo gem install nokogiri
ERROR:  Error installing nokogiri:
    nokogiri requires Ruby version >= 1.9.2.

如果我检查我的 ruby​​ 版本,它会告诉我我正在运行 ruby​​1.9.3

ruby -v
ruby 1.9.3p448 (2013-06-27 revision 41675) [i686-linux]

如果我使用printenv,这些是我的环境变量:

rvm_bin_path=/home/jenkins/.rvm/bin
GEM_HOME=/home/jenkins/.rvm/gems/ruby-1.9.3-p448@nokogiri
SHELL=/bin/bash
TERM=xterm-color
IRBRC=/home/jenkins/.rvm/rubies/ruby-1.9.3-p448/.irbrc
HUSHLOGIN=FALSE
MY_RUBY_HOME=/home/jenkins/.rvm/rubies/ruby-1.9.3-p448
USER=jenkins
rvm_path=/home/jenkins/.rvm
L1=-
rvm_prefix=/home/jenkins
MAIL=/var/mail/jenkins
PATH=/home/jenkins/.rvm/gems/ruby-1.9.3-p448@nokogiri/bin:/home/jenkins/.rvm/gems/ruby-1.9.3-p448@global/bin:/home/jenkins/.rvm/rubies/ruby-1.9.3-p448/bin:/home/jenkins/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
PWD=/home/jenkins
LANG=C
rvm_version=1.21.3 (stable)
SHLVL=1
HOME=/home/jenkins
LOGNAME=jenkins
GEM_PATH=/home/jenkins/.rvm/gems/ruby-1.9.3-p448@nokogiri:/home/jenkins/.rvm/gems/ruby-1.9.3-p448@global
install_flag=1
RUBY_VERSION=ruby-1.9.3-p448
_=/usr/bin/printenv

我在使用 RVM 时运气不佳,与其破坏我的整个安装,我想我会在这里问。

为什么我不能继续安装 nokogiri?

我在 Debian 上。

【问题讨论】:

    标签: ruby linux rubygems rvm debian


    【解决方案1】:

    只需尝试gem install nokogiri,因为您已安装 RVM。请参阅此处Installing Nokogiri 以了解与它一起安装的其他内容。

    如下:

    # nokogiri requirements
    sudo apt-get install libxslt-dev libxml2-dev
    gem install nokogiri
    

    查看my answer这里的部分错误:执行 gem ... (Errno::EACCES) ` Permission denied

    【讨论】:

    • 先决条件已经安装:libxml2-dev is already the newest version.libxslt1-dev is already the newest version.0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.作为用户“jenkins”,我需要提升权限:jenkins@jenkins-ci-02:~$ gem install nokogiriERROR: While executing gem ... (Errno::EACCES)`权限被拒绝 - /home/jenkins/。 rvm/gems/ruby-1.9.3-p448@nokogiri/gems/nokogiri-1.6.0` 我应该是“root”吗?
    • 我不确定这对我有帮助。我在这里找到了一个安装程序目录:/var/lib/jenkins/.rvm/scripts/functions/installer 和这里:/var/lib/jenkins/.rvm/src/rvm/scripts/functions/installer 作为用户“jenkins”-touch /var/lib/jenkins/.rvm/gems/ruby-1.9.3-p448/gems/nokogiri-1.6.0/new,我能够毫无问题地创建以下文件。感谢您的帮助。
    • 我有幸从头开始,所以我将这样做。我还没有找到解决方案。如果我安装得很好,我将分享我从头开始构建服务器的步骤,这可能无法帮助其他人在无法重建的服务器上解决这个问题,但这就是我所提供的全部。
    • @harperville,您是否设法解决了这个问题。我遇到了同样的错误,我和你有同样的 vesion 环境。
    【解决方案2】:

    我已将旧版本的 nokogiri (1.5.11) 添加到厨师食谱中,并且在服务器上手动添加或手动添加后它工作正常:

    chef_gem "nokogiri" 做 行动:安装 版本“1.5.11” compile_time false if respond_to?(:compile_time) 结束

    /usr/local/ruby-1.9.3-p392/bin/gem install nokogiri --version=1.5.11

    (使用您看到错误的绝对路径;表示 /my_path/gem install nokogiri)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 2015-04-09
      • 2020-03-05
      • 2019-11-20
      • 1970-01-01
      相关资源
      最近更新 更多