A Little Each Day

note to self

Railsでbundle installするとnokogiriをインストールしろとエラーがでる

こんにちは。本日はbundle install時のnokogiriのインストールについてです。

今までエラーなくbundleできていましたが、ある日突然bundleできなくなってしまいました。

今回はその解決策を共有したいと思います。

bundle installでエラー

新しいRailsアプリをつくろうとRails newをしたら、なぜかbundle installでコケるようになっていた。

ちなみに今まではなんのエラーもなくrails newやbundle installできていました。

IMPORTANT!  Nokogiri builds and uses a packaged version of libxml2.

If this is a concern for you and you want to use the system library
instead, abort this installation process and reinstall nokogiri as
follows:

    gem install nokogiri -- --use-system-libraries

If you are using Bundler, tell it to use the option:

    bundle config build.nokogiri --use-system-libraries
    bundle install

However, note that nokogiri does not necessarily support all versions
of libxml2.

エラーではnokogiriをインストールしろと言われますが、nokogiriやそれに付随するlibxml2などはすでにインストールされています。


なぜnokogiriがインストールできないのか疑問でした。


--use-system-librariesのオプションをつける

エラー文にもありますが、Bundlerを使っている場合の対処方法が書いてあるのでオプションをつけてコマンドを打ってみる。

$ bundle config build.nokogiri --use-system-libraries


そしたらいつものようにbundle install

$ bundle install


これでうまくエラーなくbundle installできました。



本日は以上です。