bundle installgem をビルドしようとしてもgem install、リモート リポジトリから同じ gem を取得することがよくあります。bundler私も宝石を取りに行こうと思いました。誰でも違いを説明できますか?たとえば、 my Gemfilelistsが次のエラー libv8で失敗した場合:bundle install
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
....
An error occurred while installing libv8 (3.16.14.3), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.16.14.3'` succeeds before bundling.
しかし、gem installそれを取得するだけで成功します。man bundle-installこれは言うべきです:
bundle install を初めて実行する場合 (および Gemfile.lock が存在しない場合)、bundler はすべてのリモート ソースを取得し、依存関係を解決して、必要なすべての gem をインストールします。
gem をインストールするだけなのにbundle install、gem をビルドすることに決めたのはなぜですか? gem installまた、一部のバージョン用にビルドすることもできますが、同じ宝石の他のバージョン用にインストールするだけですか? たとえば、thrift-0.9.0.1.patchedビルドされていthrift-0.9.2.0ますが、私のマシンにインストールされています。違いはなぜですか?