user1639848
user1639848

Reputation: 572

Nokogiri 1.5.9 gem does not install on Mac OS X Mavericks?

Last night my system updated to Maverick and now I can not install Nokogiri from my gemfile. It complains that it can not find libxml2, but Maverick ships with libxml2. I have also tried

brew install --development libxml2

And:

brew install --development libxslt

and I still see the same error message. I have pasted the error messages below, can someone take a look and tell me what I should try next?

mapte:config-renderer mapte$  gem install nokogiri -v '1.5.9'
Building native extensions.  This could take a while...
ERROR:  Error installing nokogiri:
        ERROR: Failed to build gem native extension.

        /usr/local/var/rbenv/versions/1.9.2-p180/bin/ruby extconf.rb
checking for libxml/parser.h... no
-----
libxml2 is missing.  please visit http://nokogiri.org/tutorials/installing_nokogiri.html             for help with installing dependencies.
-----
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
        --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/usr/local/var/rbenv/versions/1.9.2-p180/bin/ruby
    --with-zlib-dir
    --without-zlib-dir
        --with-zlib-include
        --without-zlib-include=${zlib-dir}/include
        --with-zlib-lib
        --without-zlib-lib=${zlib-dir}/lib
        --with-iconv-dir
        --without-iconv-dir
        --with-iconv-include
        --without-iconv-include=${iconv-dir}/include
        --with-iconv-lib
        --without-iconv-lib=${iconv-dir}/lib
        --with-xml2-dir
        --without-xml2-dir
        --with-xml2-include
        --without-xml2-include=${xml2-dir}/include
        --with-xml2-lib
        --without-xml2-lib=${xml2-dir}/lib
        --with-xslt-dir
        --without-xslt-dir
        --with-xslt-include
    --without-xslt-include=${xslt-dir}/include
    --with-xslt-lib
    --without-xslt-lib=${xslt-dir}/lib
    --with-libxslt-config
    --without-libxslt-config
    --with-pkg-config
    --without-pkg-config
    --with-libxml-2.0-config
    --without-libxml-2.0-config
    --with-libiconv-config
        --without-libiconv-config


Gem files will remain installed in /usr/local/var/rbenv/versions/1.9.2-
p180/lib/ruby/gems/1.9.1/gems/nokogiri-1.5.9 for inspection.
Results logged to /usr/local/var/rbenv/versions/1.9.2-p180/lib/ruby/gems/1.9.1/gems/nokogiri-1.5.9/ext/nokogiri/gem_make.out 

Upvotes: 5

Views: 1651

Answers (2)

bmike
bmike

Reputation: 971

The first thing I would check is that your /usr/include is not empty or missing libxml2.h and consider symlinking or otherwise exposing your Xcode SDK /usr/include to the hombrew process:

The app store version is below, but feel free to adjust the path for beta/pre-release/GM/older versions of Xcode you may wish to use is providing a parser.h file:

 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2/libxml/parser.h

Next step would to be sure homebrew is up to date with the typical three step dance:

 brew update
 brew outdated
 brew upgrade

At that point, you might need to actually list your exact error message from the mkmf.log file according to the output you pasted in the question.

Upvotes: 3

jacklin
jacklin

Reputation: 2779

For me I had to install the developer tools:

  xcode-select --install

Then be sure to open the xcode app and accept the license.
I tried to do it from the command line but it didn't work.

Upvotes: 4

Related Questions