nokogiriのインストールでハマりまくった話
Ruby on Rails チュートリアルで勉強中です。しかし、第3章のGemfileインストールのところでエラーが出ました。Macです。
これです。
$ bundle update
Fetching gem metadata from https://rubygems.org/.........
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...
Using rake 10.3.2
~~~
省略
~~~
Building nokogiri using packaged libraries.
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/akinov/.rbenv/versions/2.1.2/bin/ruby extconf.rb
Building nokogiri using packaged libraries.
-----
libiconv 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.
~~~
省略
~~~
extconf failed, exit code 1
Gem files will remain installed in /Users/akinov/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/nokogiri-1.6.2.1 for inspection.
Results logged to /Users/akinov/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/extensions/x86_64-darwin-13/2.1.0-static/nokogiri-1.6.2.1/gem_make.out
An error occurred while installing nokogiri (1.6.2.1), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.2.1'` succeeds before bundling.
どうやらnokogiriとやらがうまくインストール出来ないらしい。エラーメッセージをググりまくって、格闘すること丸二日。nokogiriのホームページの指示通りやってもうまくいかないし、頭が割れそうなほど悩みましたが、ようやく解決しました。
http://openbook4.me/sections/785
このページ通りにやっても最後のところで、権限がないと言われて止まっていたところ。sudoをつけたらうまくいきました! つまり
$sudo gem install nokogiri -- \
--with-xml2-include=/usr/local/Cellar/libxml2/2.9.1/include/libxml2 \
--with-xml2-lib=/usr/local/Cellar/libxml2/2.9.1/lib \
--with-xslt-dir=/usr/local/Cellar/libxslt/1.1.28 \
--with-iconv-include=/usr/local/Cellar/libiconv/1.14/include \
--with-iconv-lib=/usr/local/Cellar/libiconv/1.14/lib
とやると解決するというお話です。 ようやくゆっくり寝られそうです。