9

Rails アプリで MongoMapper を動作させることができません。次のエラー メッセージが表示されます。

**注意: C 拡張機能がロードされていません。これは、MongoDB Ruby ドライバーのパフォーマンスを最適化するために必要です。拡張機能は次のようにインストールできます: gem install bson_ext

インストール後もこのメッセージが引き続き表示される場合は、bson_ext gem がロード パスにあり、bson_ext と mongo gem が同じバージョンであることを確認してください。

DevKit をインストールし、gem をインストールしました: gem install bson_ext --no-rdoc --no-ri (結果: bson_ext-1.0.1 installed)

Windows 7 で実行しています。Rails のバージョンは 2.3.7 です。インストールには RubyInstaller を使用しました。誰かが私を正しい方向に向けることができますか?

4

6 に答える 6

11

問題は、bson_ext gem バージョンと mongo gem バージョンが一致する必要があることです。また、mongo_mapper はまだ mongo-1.0.1 の準備ができていないため、使用する必要がある mongo および bson_ext gem のバージョンはそれぞれ 1.0 です。それぞれ。

したがって、次のようにします。

gem install mongo -v=1.0 --no-ri --no-rdoc && \
gem install bson_ext -v=1.0 --no-ri --no-rdoc

config/environment.rb の Rails 2.x の場合は、次のようにします。

config.gem 'mongo', :version => '1.0'
config.gem 'bson_ext', :version => '1.0'

または Rails 3 の場合は、Gemfile で次のようにします。

gem 'mongo', '1.0'
gem 'bson_ext', '1.0'
于 2010-05-26T15:43:41.673 に答える
1

これは通常、MongoMapperに必要なバージョン番号と等しくないバージョンのbson_extをインストールすることによって発生します。bson MongoMapperのどのバージョンが必要かを確認してから、そのバージョンがあり、他のバージョンがインストールされていないことを確認してください。

于 2010-05-25T14:57:16.657 に答える
1

これを機能させるには、次のように bson のバージョンを指定する必要がありました。

gem 'mongo', "1.1"
gem 'bson', "1.1"
gem 'bson_ext', "1.1"

(レール3を使用)

于 2010-10-19T02:30:26.183 に答える
0

以下をenvironment.rbに含めます

config.gem 'bson_ext', :version => "1.0", :lib => "bson_ext/cbson"
于 2010-09-03T05:05:42.060 に答える
0
  1. 以下を使用してインストールbson_extします。

    gem install bson_ext
    
  2. 宝石をあなたに追加してくださいGemfile

    gem 'bson_ext'
    
  3. bundleプロジェクトのルート レベル ディレクトリで実行します。

于 2015-11-17T11:34:19.540 に答える
0

上記の手順に従いましたが、まだ「'bson_ext' をロードするファイルはありません。gem に移動し、"ext" フォルダー内のフォルダーを 1 レベル上 (gem のルート) に移動しようとしましたが、見よ、うまくいきました。FWIW...

于 2010-06-08T01:21:49.830 に答える