RVM 1.9.1 & nokogiri

Возникли проблемы при установке камня nokogiri под rvm ruby ​​1.9.1.

gem install nokogiri

Я собираюсь...

/usr/include/libxml2... no
libxml2 is missing.  try 'port install libxml2' or 'yum install libxml2-devel'
*** extconf.rb failed ***

но я проверил:

sudo apt-get install libxml2

и я получил:

Reading state information... Done
libxml2 is already the newest version.

это корневая вещь, возможно? RVM запускает все в пользовательском пространстве.

3 ответа

Решение

Возможно, вы захотите подтвердить, что версия libxml, установленная apt, является текущей. Nokogiri любит хорошие свежие версии libxml, поэтому я собрал мою установку libxml из исходного кода.

nokogiri -v скажет вам, что вы используете.

Более простое решение:

sudo apt-get install libxslt-dev libxml2-dev

Я столкнулся с подобной проблемой при использовании доморощенного на Mac.

Вот код, который делает свое дело, небольшое расширение инструкций по установке Nokogiri для доморощенного. По сути, вам нужно включить директиву, чтобы сказать nokogiri, что нужно использовать доморощенные каталоги libxml. Убедитесь, что вы указали правильную версию libxml2, установленную homebrew, которая для меня была 2.7.8:

brew install libxml2

brew link libxml2 #this may be enough but didn't work for me with rvm

#explicitly tell nokogiri to use you homebrew libxml2 rather than system
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26
Другие вопросы по тегам