web-dev-qa-db-ja.com

Mac OS Sierra 10.12にNokogiriをインストールする方法

Mac OS Sierra 10.12にNokogiri(1.6.8.1)をインストールするのに問題があります。

brew install libxml2 libxsltを使用して、コマンドラインオプションを使用してインストールディレクトリを参照しようとしましたが、役に立ちませんでした。

71
Julian Popov

Xcodeを開き、メニューからXCode-> Preferencesを使用してコマンドラインツールを更新します(Xcode 8.0)。

それから:

bundle config build.nokogiri --use-system-libraries=true --with-xml2-include="$(xcrun --show-sdk-path)"/usr/include/libxml2
bundle install

あるいは単に:

gem install nokogiri -v 1.6.8.1 -- --use-system-libraries=true --with-xml2-include="$(xcrun --show-sdk-path)"/usr/include/libxml2
176
Julian Popov

より簡単な解決策は以下を実行することです:

xcode-select --install
gem install nokogiri

更新

Mojaveでは、gem install nokogiri -v '1.6.6.2' -- --use-system-librariesを使用しています

122
NDan

最初にHomebrewでlibxml2をインストールしてみてください。

brew install libxml2

その後、バンドルでインストールする場合

bundle config build.nokogiri --use-system-libraries \
  --with-xml2-include=$(brew --prefix libxml2)/include/libxml2
bundle install

Gemで直接インストールする場合

gem install nokogiri -- --use-system-libraries \
  --with-xml2-include=$(brew --prefix libxml2)/include/libxml2
45
Quanlong

これは gem install nokogiri -v '1.6.8.1'が失敗する ...の重複である可能性があります...

brew unlink xz; bundle install; brew link xz

xzを再リンクする必要はないかもしれません。たとえば、the_silver_searcher(シンボリックリンクされていないライブラリに直接リンクしているため)の依存関係しかない場合です。

11
Orangenhain
gem update --system
xcode-select --install
brew unlink xz
gem install nokogiri -v '1.6.8.1'
brew link xz

上記の手順で問題を解決できない場合は、brew doctorを実行して、作成されていないヘッダーファイルをクリーンアップすることもできます。

11
yuяi

Yuяiの答えと、Nokogiriの助けに似ています:

brew unlink xz
gem install nokogiri
brew link xz

http://www.nokogiri.org/tutorials/installing_nokogiri.html#mac_os_x

これは1.7.0.1で機能しました

10
Rimian

ミドルマン向け

gem install nokogiri -v '1.8.2'---use-system-libraries = true --with-xml2-include =/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2 /

0
lraboteau

bundle config build.nokogiri --use-system-librariesでbundlerを使用してnokogiriを以前にインストールした場合、この設定は引き続き存在します。その間にXcodeのセットアップを解決した場合(nokogiriインストールでのインストールの主要な方法として提案されているように)、バンドルをbundle config --delete build.nokogiriから削除し、bundle installをやり直してみてください。

0
Niels Kristian