1

私はRailsInstallerをインストールし、 実行すると以下を追加DevKitDevKit/mingwました:PATH
bundle install

ERROR: Failed to build gem native extension.

"C:/Program Files (x86)/RailsInstaller/Ruby1.9.3/bin/ruby.exe" extconf.rb
C:/Program Files (x86)/RailsInstaller/Ruby1.9.3/bin/ruby.exe: invalid switch in RUBYOPT: -F (RuntimeError)

OS : Windows 8 x64, Administrator Account

4

1 に答える 1

4

RailsInstaller の上に RubyInstaller を混在させようとしたかどうかは明確ではなく、推奨されていません。

ただし、これが失敗した最も一般的な理由は、スペースを含むディレクトリにインストールしたためです( Program Files (x86))

インストール中に、RailsInstaller は にインストールするための推奨されるデフォルトを設定しますC:\RailsInstaller

それと同様に、RubyInstaller は、インストール用にスペースを含むパスを避けることを強く推奨しています (インストール画面にあります)。

Ruby と一部のライブラリでは、スペースを含むパスに問題がありました。そのため、推奨されるインストール ディレクトリはC:\Ruby193RubyInstaller 1.9.3 です。

パス内のこれらのスペースは、C 拡張などのライブラリのコンパイルに影響し、状況によっては実際にプログラムを実行していました。

コミュニティはこれらの問題を修正するために懸命に取り組んできましたが、Ruby 2.0 まで、これらの問題のほとんどが Ruby 自体で解決されませんでした。

RubyInstaller トラブルシューティング ページに記載されているとおり

特に、INSTALLATION DIRECTORY と GEM PATH に注意してください。

これらのディレクトリにスペースが含まれていることに気付いた場合は、Ruby をスペースを含むフォルダーにインストールしたか (強くお勧めしません)、またはシステム内の別の環境変数が干渉している可能性があります。スペースを含むディレクトリは、多くの場合、DevKit の GCC コンパイラで問題を引き起こします。

さて、エラーのバックトレースで:

C:/Program Files (x86)/RailsInstaller/Ruby1.9.3/bin/ruby.exe: invalid switch in RUBYOPT: -F (RuntimeError)

他の何かがRUBYOPT環境変数に干渉していることを示しています。

これらの変更をアンインストールして、次のことをお勧めします。

そして、もう一度やり直してください。

すべてのコンポーネントのインストールを手動で行いたくない場合は、代わりに RailsInstaller に対して同じ (デフォルトでのクリーン インストール) を試す必要があります。

RailsInstallerにはすでにDevKit が含まれているため、個別にインストールする必要はありません。

最後になりましたが、別の DevKit をダウンロードする場合は、インストールした Ruby のバージョンに適したものを使用することが重要です。これは、RubyInstaller のダウンロード ページに記載されています。

このページの下には、開発キット (DevKit) のいくつかの異なるバージョンがリストされています。お使いのバージョンの Ruby に適したものをダウンロードしてください。

Ruby 1.8.6 to 1.9.3: tdm-32-4.5.2
Ruby 2.0.0: mingw64-32-4.7.2
Ruby 2.0.0 x64 (64bits): mingw64-64-4.7.2

それが役立つことを願っています。

于 2013-04-28T16:33:25.137 に答える