2011-10-15 11 views
12

バンドルインストールを実行していて、このエラーが発生したJSON gemにアクセスすると、すべてのgemが正常に動作します。ウィンドウを使用してレールにJSON gemをインストールできない

Installing json (1.6.1) with native extensions c:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:55 
    2:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::E 
    xtensionBuildError) 

      c:/Ruby192/bin/ruby.exe extconf.rb 
    checking for re.h... *** extconf.rb failed *** 
    Could not create Makefile due to some reason, probably lack of 
    necessary libraries and/or headers. Check the mkmf.log file for more 
    details. You may need configuration options. 

このエラーの原因は何ですか?

答えて

4

これは、この宝石がC言語で記述されたコードを使用しているからです。正しく動作させるには、マシンにcコンパイラがインストールされている必要があります。 http://rubyinstaller.org/add-ons/devkit/

開発キットは、Cコンパイラ(およびいくつかの他のもの)をインストールします。方法としては、Windowsで作業しているので、RubyInstaller開発キットはあなたを助けるかもしれない、純粋なルビー

16

に書かれjson_pureを使用するようにしてくださいCで書かれた部分をコンパイルする。

インストールして、おそらくオプション--platform=rubyで宝石をインストールしてみてください。

詳細はhttps://github.com/oneclick/rubyinstaller/wiki/Development-Kit

+5

これが正しい答えですが、宝石の更新--systemを行うのか、あなたはまだrubyinstaller – pguardiario

+1

ニースに問題があると確信してすることは、と私の問題を解決しましたDevKit +1 – a5his

+2

devkit用のChocolatey NuGetインストーラもあります! http://chocolatey.org/packages/ruby.devkit – mcandre

0

で発見することができます私は、RORの専門家でないんだけど、Redmineのインストール中に私が得たJSONのインストールの問題は、次のようにして解決されました:

  • メイクを作成します。 .bat D:¥LANGS¥MinGW¥bin
  • このディレクトリをPATHに保存
  • 上記のmake.batを編集し、D:\ LANGS \ MinGW \ msys \ 1.0 \ bin \ make.exeという行を追加します。

私が気付いたのは、mingw32-make.exeは動作しませんでしたが、「D:\ LANGS \ MinGW \ msys \ 1.0 \ bin \ make.exe」が機能していました。

注:MinGWのインストールは、D:\ LANGS \の下にあります。特定のインストールに応じて変更を加えてください。

-1

はい、開発キットをインストールしてください。また、ダウンロードして実行するだけでなく、インストールするためにいくつかのコマンドラインを実行する必要があります。

ダウンロードして、どこか(永久的に)抽出してください。その後、ruby dk.rb initとruby dk.rb installを実行して、あなたのパス上のrubyインストールにバインドします。

そのためのガイドはここにある:

https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

関連する問題