Ошибка Nokogiri при запуске установки пакета

пытается получить клонированное приложение Rails. При запуске bundle install Я получаю эту ошибку:

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 version:

› 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)

Я уже час ломаю голову, пытаясь понять, что может быть не так... Пожалуйста, помогите!

Edit:

вот более подробный вывод ошибки:

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

8 ответов


Я использую Mac OSX (El Capitan), и он, похоже, связан с инструментами разработчика Xcode. Я побежал!--0--> в моем рабочем каталоге, затем перепроверил bundle install команда, и все это работало нормально после этого ^^.

надеюсь, что это может помочь кому-то.


я столкнулся с этой ошибки, и это то, что сработало для меня:

bundle config build.nokogiri --use-system-libraries
bundle install

проблема была с libxml:

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

оказалось, что я использую систему по умолчанию Ruby (и, таким образом, устанавливаю все драгоценные камни там в /Library/Ruby/Gems) хотя rbenv указывает на ruby-1.9.3, поэтому Nokogiri жаловался.

исправлено это, добавив это в $PATH, поэтому rbenv загружается перед системой ruby:

export PATH="$HOME/.rbenv/bin:$PATH"


убедитесь, что у вас установлена последняя версия инструментов командной строки. если вы не уверены, просто запустите xcode-select --install и это появится хороший графический интерфейс, чтобы провести вас через процесс установки. вы можете также проверить Mac app store, чтобы увидеть, если у вас есть обновление там ждет вас. текущая версия Command Line Developer Tool for OS X 10.10 Так что вы можете увидеть, если Yosemite не имеет проблем с этим. после получения обновления запустите sudo bundle install и вы можете иметь последнюю версию nokogiri. удача.


попробуйте использовать более старую версию nokogiri, это сработало для меня

gem 'nokogiri', '1.5.9'


Если fellow googler использует linux (ubuntu), то установка пакета deb zlib1g-dev помогла


для меня сработало следующее:

gem install nokogiri -- --use-system-libraries

установите более старую версию с помощью этой команды:gem install nokogiri -v 1.5.5