2

Nokogiri gem を使用する Rails エンジンを構築していますが、MacOS 10.7 および 10.8 での開発セットアップに問題があります。

Nokogiri がセットアップで適切に動作するように、libxml および libxslt ライブラリを次のように更新しました。

brew update
brew install libxslt
brew upgrade libxml2
gem uninstall nokogiri
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.9.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.9.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.28

Nokogiri は、「通常の」レール アプリで使用すると正常に動作します (Gemfile に含めて、bundle install を実行します)。

この問題は、アプリから gem としてビルドして使用している Rails Engine から Nokogiri を使用しようとすると発生します。

ジェムスペックでは:

s.add_dependency 'nokogiri' # XML parsing

また、Gem の Gemfile の上部で次のことを試しました。

gem 'nokogiri'

Rails Engine gem を使用するアプリを起動すると、次の警告が表示されます。

WARNING: Nokogiri was built against LibXML version 2.9.0, but has dynamically loaded 2.7.8

正しいバージョンの Nokogiri と libxml と libxslt を使用するように gem やバンドラー、Rails を構成するにはどうすればよいですか?

また、ここに出力がありますnokogiri -v

# Nokogiri (1.5.9)
    ---
    warnings: []
    nokogiri: 1.5.9
    ruby:
      version: 1.9.3
      platform: x86_64-darwin12.3.0
      description: ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-darwin12.3.0]
      engine: ruby
    libxml:
      binding: extension
      compiled: 2.9.0
      loaded: 2.9.0
4

1 に答える 1