8

Nokogiri を osx 10.5.8 で動作させようとして、ここでつまずきにぶつかりました。

http://nokogiri.org/tutorials/installing_nokogiri.htmlを試し 、次にhttp://martinisoftware.com/2009/07/31/nokogiri-on-leopard.htmlを試しました

同僚も助けようとしていますが、このエラー メッセージを取り除くことができません。

ライブラリがロードされていません: /usr/local/lib/libxml2.2.dylib ... 理由: ライブラリのバージョンに互換性がありません: nokogiri.bundle にはバージョン 11.0.0 以降が必要ですが、libxml2.2.dylib にはバージョン 10.0.0 が用意されています

新しくインストールされたライブラリを使用して gem をコンパイルしようとしましたが、それでもこのエラーに遭遇します。

どんな助けや指針も本当に感謝しています!

私は osx 10.6 のコピーを受け取りました - これは役に立ちますか??

ありがとう

4

3 に答える 3

20

実際、答えはhttp://nokogiri.org/tutorials/installing_nokogiri.htmlにあります。

brew install libxml2 libxslt
brew link libxml2 libxslt

次に、ソースから libiconv をインストールします。

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar xvfz libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/Cellar/libiconv/1.13.1
make
sudo make install

次に、(最後に) nokogiri をインストールします。

gem install nokogiri --
                    --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 
                    --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib 
                    --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 
                    --with-iconv-include=/usr/local/Cellar/libiconv/1.13.1/include 
                    --with-iconv-lib=/usr/local/Cellar/libiconv/1.13.1/lib

/usr/local/Cellar/libxml にある libxml2 のバージョンがあることを確認します (私の場合は 2.8.0 でした)。

ハッピーコーディング!

于 2012-10-16T04:14:52.550 に答える
8

以下は、OS-X 10.9.1 (Mavericks) で機能しました。

brew install libxml2 libxslt
gem install nokogiri -- --with-xslt-dir=/usr/local/opt/libsxlt
于 2014-02-06T23:08:04.150 に答える
0

10.5マシンに飛び乗って、そこでNokogiriの動作バージョンを入手したことを思い出しました。コマンド履歴を調べて、Homebrewを使用した正確なコマンドのカットアンドペーストを次に示します。

brew install libxml2 libxslt
brew install libiconv
sudo gem install nokogiri -- --with-xslt-dir=/usr/local/homebrew/Cellar/libxslt/1.1.26

私はまだ10.6にアップグレードしますが。

古い答え:

この答えは役立つかもしれません。OS Xパッケージマネージャーに抵抗した後、私はHomebrewに屈し、同様の問題を解決するのに役立ちました。これはRVM用です(私は同様のプロセスを経たことを覚えています)が、重要なのはnokogirigemに新しいlibxml2インストールを使用するように指示することです。

ところで(少し話題から外れていますが、10.6に移行する場合は関連性があります)OOIターミナルで64ビットEFIについてMacをチェックできます。

ioreg -l -p IODeviceTree | grep firmware-abi

表示されるはずです(64ビットの場合):

"firmware-abi" = <"EFI64">

(その記事への返信で詳述されているように)しかし、これはすべてが単純な航海を意味するわけではありません...

于 2012-07-02T19:58:14.730 に答える