Ruby on rails 运行bundle安装时出现Nokogiri错误

Ruby on rails 运行bundle安装时出现Nokogiri错误,ruby-on-rails,ruby,rubygems,nokogiri,rbenv,Ruby On Rails,Ruby,Rubygems,Nokogiri,Rbenv,正在尝试运行克隆的Rails应用程序。运行bundle安装时出现以下错误: Using mini_portile (0.5.0) Installing nokogiri (1.6.0) Gem::InstallError: nokogiri requires Ruby version >= 1.9.2. An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue. Make sure th

正在尝试运行克隆的Rails应用程序。运行
bundle安装时
出现以下错误:

Using mini_portile (0.5.0)
Installing nokogiri (1.6.0)
Gem::InstallError: nokogiri requires Ruby version >= 1.9.2.
An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.
但这是rbenv版本的输出:

› rbenv version
1.9.3-p429 (set by /Users/andrewguo/.rbenv/version)
运行
gem list
时,我得到:

.
.
.
mini_portile (0.5.0)
minitest (2.5.1)
multi_json (1.7.7)
nokogiri (1.6.0)
我绞尽脑汁想了一个小时,想弄清楚可能出了什么问题。。。请帮忙

编辑:

下面是一个更详细的错误输出:

An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.
Bundler::InstallError: An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:130:in `install_gem_from_spec'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:91:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:90:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:14:in `install'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/cli.rb:247:in `install'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `__send__'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor.rb:344:in `dispatch'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/base.rb:434:in `start'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/friendly_errors.rb:3:in `with_friendly_errors'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20
/usr/bin/bundle:19:in `load'
/usr/bin/bundle:19

尝试使用旧版本的nokogiri,它对我很有用


gem'nokogiri','1.5.9'

结果表明,我使用的是默认系统Ruby(因此在
/Library/Ruby/gems
中安装了所有gem),即使rbenv指向Ruby-1.9.3,这也是nokogiri抱怨的原因

通过将其添加到$PATH修复了此问题,因此rbenv在系统ruby之前加载:


export PATH=“$HOME/.rbenv/bin:$PATH”

使用此命令安装旧版本:
gem Install nokogiri-v 1.5.5

确保您拥有最新版本的命令行工具。如果您不确定,只需运行
xcode选择--install
,这将弹出一个漂亮的gui来指导您完成安装过程。你也可以检查mac应用商店,看看是否有更新在那里等着你。当前版本是OS X 10.10的
命令行开发工具
,因此您可以查看Yosemite是否对此没有问题。获得更新后,运行
sudo bundle install
,就可以获得最新版本的nokogiri。祝你好运。

我遇到了这个错误,这就是我的工作原理:

bundle config build.nokogiri --use-system-libraries
bundle install
gem install nokogiri -- --use-system-libraries
问题在于
libxml

libxml2 is missing.  Please locate mkmf.log to investigate how it is failing.

如果谷歌同行正在使用linux(ubuntu),那么安装deb包zlib1g dev有助于

以下几点对我很有用:

bundle config build.nokogiri --use-system-libraries
bundle install
gem install nokogiri -- --use-system-libraries
我正在使用MacOSX(ElCapitan),它似乎与Xcode开发工具有关。我在我的工作目录中运行了
xcode-select--install
,然后重新运行
bundle-install
命令,之后一切都正常了^^

希望这可以帮助别人。

您只需要在macOS中安装


在终端
/usr/bin/ruby-e“$(curl-fsSL)上运行https://raw.githubusercontent.com/Homebrew/install/master/install)“

在Ubuntu机器上,以下是安装Nokogiri的文档建议:

sudo apt-get install build-essential patch ruby-dev zlib1g-dev liblzma-dev
gem install nokogiri

我还必须:
sudo apt get install libxslt dev libxml2 dev
如本文所述:

如何使用?在文件gem中写入?下一步对我有效:sudogem安装nokogiri-v'1.6.6.2'--使用系统库--with-xml2-include=/usr/include/libxml2--with-xml2-lib=/usr/lib这对我不起作用。请详细说明你能进一步解释吗?安装自制软件如何解决给定的问题?这对我不起作用。这对我不起作用