Если вы устанавливаете более старую версию Nokogiri, то есть до 1.6, это может помочь:
В Руководстве по установке Nokogiri они упоминают:
Поскольку Nokogiri нужно компилировать и динамически связывать как с libxml2, так и с libxslt, он приобрел репутацию сложного в установке.
Начиная с Nokogiri 1.6, исходный код libxml2 и libxslt поставляется вместе с Nokogiri, искомпилировано в gem-install-time.Этот документ должен работать для всех версий 1.6.4 и новее.
(Если вам нужна поддержка для установки более ранних версий Nokogiri, вы можете взглянуть на историю git для этого документа.)
Действительно, это сложно установить, но есть способ.Я начал копаться в истории readme и решил сделать это с хорошо написанным сообщением коммита:
" Доморощенный, я тебя прям ненавижу. "
Из этого сообщения и других ответов, приведенных здесь, я обнаружил, что мне нужно быть очень точным в отношении библиотек libxml2 lib, dir и include при установке Nokogiri.Следующее работает для меня, но, пожалуйста, обновите, чтобы соответствовать вашей версии программного обеспечения libxml2 (у меня было 2.9.2
, и я устанавливал Nokogiri 1.5.0
):
NOKOGIRI_USE_SYSTEM_LIBRARIES=1 gem install nokogiri -v '1.5.0' --
--use-system-libraries
--with-xml2-lib=/usr/local/Cellar/libxml2/2.9.2/lib
--with-xml2-config="$(brew --prefix libxml2)/bin/xml2-config"
--with-xslt-config="$(brew --prefix libxslt)/bin/xslt-config"
--with-xml2-dir=/usr/local/Cellar/libxml2/2.9.2/
--with-xml2-include=/usr/local/Cellar/libxml2/2.9.2/include/libxml2