0

Mac OS X 10.8 で Rails を開発しており、Capistranoを使用してDebian Squeezeにデプロイしようとしています。

展開すると、次のエラーが表示されます。

Could not find libv8-3.3.10.4 in any of the sources

bundle package私は-da Mac OS X バイナリ gemを持っているようです:

Updating files in vendor/cache
...
* libv8-3.3.10.4-x86_64-darwin-12.gem

持っていGemfileます:

gem 'therubyracer'

Squeeze はパッケージ マネージャーから Node.js を提供しないため、バイナリ gem を使用したいと考えており、運用サーバーからソース コンパイルを続けたいと考えています。

Linux と Darwinの両方のバイナリをパッケージ化するように Bundler に指示する方法はありますか?

ところで、 Bundlertherubyracerも使用する場合、これをどのように達成しますか?

4

2 に答える 2

0

libv8Debian ボックスにインストールします。

于 2012-11-27T22:06:44.917 に答える
0

bundle package1つの解決策は、ソースからすべてのパッケージをダウンロードするスキップすることでしたが、私の好みでは展開が遅すぎました(おそらく何らかの理由で、バイナリgemをダウンロードせず、毎回libv8を新たにコンパイルしませんでした)。

Node.jsそのため、ソースから Debian ボックスにインストールし、それをプロジェクトの前提条件として文書化することになりました。次に、次の部分をコメントアウトしましたGemfile

group :assets do
  ...
  # gem 'therubyracer'
  ...
end

これで、再びbundle packageすべてをすばやくデプロイできるようになりました。

于 2012-11-27T23:05:28.143 に答える