4

OSX Mountain lion で gem install ffi を実行すると、次のエラーが発生します。

gem install ffi
Building native extensions.  This could take a while...
ERROR:  Error installing ffi:
    ERROR: Failed to build gem native extension.

    /beweiche.rvm/rubies/ruby-1.9.3-p374/bin/ruby extconf.rb
/beweiche.rvm/rubies/ruby-1.9.3-p374/bin/ruby: invalid option -H  (-h will show valid options) (RuntimeError)


Gem files will remain installed in /beweiche.rvm/gems/ruby-1.9.3-p374@hugo/gems/ffi-1.8.1 for inspection.

これは、どのネイティブ拡張でも発生します。システム ruby​​ (1.8.7) を使用して、ネイティブ拡張機能付きの gem をインストールできます。1.9.3 でも動作しました。しかし、「gem update installed」を実行した後、行き詰まりました。

私のマシンにインストールされた宝石:

bundler (1.2.3)
coderay (1.0.9)
diff-lcs (1.2.4)
graph (2.5.2)
method_source (0.8.1)
pry (0.9.12.1)
rake (10.0.3)
rspec (2.13.0)
rspec-core (2.13.1)
rspec-expectations (2.13.0)
rspec-mocks (2.13.1)
rubygems-bundler (1.1.0)
rvm (1.11.3.6)
slop (3.4.4)

どこかのばかげたタイプミスのようですが、どこを見つけることができません。

どんなヒントでも大歓迎です。

その間、rvm に ruby​​ 2.0.0-rc1 をインストールしました。この設定により、ネイティブ拡張機能を備えた gem をインストールできました。gem を 1.9.3 で 2.0.0 と同じバージョンにアップグレードしましたが、問題はまだ残っています。

4

1 に答える 1

0

を使用しますhomebrewか? brew install libffiその場合は、実行する前にffi をインストールしてみてくださいbundle

なぜあなたは走ったのgem update installedですか?Bundler に更新を処理させる必要があります:bundleまたはbundle update gem_xyz. 新しい gem を追加したい場合は、それを Gemfile に追加するだけです。

すべての gem を更新したときに、そのうちの 1 つが FFI に依存するように更新されたと思います。ffiこれは、 inを検索することで確認できますGemfile.lock。どのgemがそれに依存しているかがわかったら、そのgemをGemfile内の以前のバージョンに修正して依存関係を完全に取り除くか、libのインストールに進むかを決定します。

于 2013-07-09T04:13:36.327 に答える