嫌な思い出しかないNokogiriをアップデートする時にまためっちゃハマったのでメモ。

結論だけ言うと、

bundle config build.nokogiri --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
bundle install

でいけました。普通のgem installなら

gem install nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/

です。本家のgithubにドンピシャなコメントがありました。

やれ libxml2 is missing だの libiconv is missing だの色々怒られて、mkmf.log見たらxmlParseDoc()の引数がおかしいとかどうしたらいいかわからん問題に結構ぶつかりましたが、ぐぐってもないと思ったら本家にちゃんとissue上がってました。

これほんま毎度思うけどもうちょっとなんとかならんもんかねー。

2015/01/24 追記

最近新しくMac Book Proを買って、早速これでインストールしようとしたらこけたので修正版も書いておきます。

brew install libxml2 libxslt
brew link libxml2 libxslt --force
bundle config build.nokogiri --use-system-libraries --with-xml2-include=/usr/local/include/libxml2 --with-xml2-lib=/usr/lib/
bundle install

brew installとbrew linkをやると、前は/usr/includeにできてたのになぜか/usr/local/includeに変わってたのでそこだけ変えてます。原因は知らん。