Подтвердить что ты не робот

ПРЕДУПРЕЖДЕНИЕ: Nokogiri был построен против LibXML версии 2.7.3, но динамически загружен 2.7.8

После создания новой установки Mac OS X 10.8 Mountain Lion и после установки Ruby 1.9.3 и Ruby on Rails 3.2.6 я запустил консоль Rails, и я получил это предупреждающее сообщение:

ПРЕДУПРЕЖДЕНИЕ: Nokogiri был построен против LibXML версии 2.7.3, но имеет динамически загружается 2.7.8

Как я могу это исправить?

4b9b3361

Ответ 1

Я нашел некоторые исправления для Lion, но пока нет ни одного для Mountain Lion. Тем не менее я пробовал это, и он работает:

gem uninstall nokogiri libxml-ruby

brew update
brew uninstall libxml2
brew install libxml2 --with-xml2-config
brew link libxml2

brew install libxslt
brew link libxslt

gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2/ --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib/ --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26/

Источник (для Льва): https://gist.github.com/1349681

Ответ 2

Я переустановил Ruby, который исправил его. Возможность использования встроенных библиотек.

Ответ 3

gem uninstall nokogiri
bundle install

Даже лучше:

gem pristine nokogiri

Примечание:

Это произойдет неоднократно при изменении вашей системы и изменений библиотек.

Ответ 4

Обратите внимание, что ссылка, как и на столбец @Davids, будет мешать вашим инструментам сборки и ссылки на вашу ОС (что, скорее всего, не то, что вы хотите, если используете brew), но вы можете просто выполнить каждую команду выше, кроме опустите строки 'brew link, и все будет построено просто отлично, например:

gem uninstall nokogiri libxml-ruby
brew update
brew uninstall libxml2
brew install libxml2 --with-xml2-config
brew install libxslt

gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2/ --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib/ --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26/

Ответ 5

Ввод gem 'nokogiri' выше gem 'pg' в моем Gemfile исправил это для меня.

В моем Gemfile не было nokogiri, но это была зависимость, которая была в Gemfile.lock, поэтому я поместил ее в свой Gemfile явно.

Ответ 6

Основываясь на ответе от @David, для меня было достаточно следующих шагов. Нет флагов компилятора и настраиваемых путей.

gem uninstall nokogiri

brew update
brew install libxml2
brew update libxml2
brew link libxml2

gem install nokogiri