0

VPSのcatarseプロジェクトでバンドル インストールを実行しようとすると、このプロジェクトに必要な gem の多くがエラーを返し、インストールできません (使用しています: ruby​​ 1.9.2p320)。

たとえば、エラーを返す宝石は次のとおりです。

  • 薄い
  • イベントマシン
  • linecache19

エラーは常に次で始まるものです。

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

そして次で終わります:

Gem files will remain installed in /usr/local/rvm/gems/ruby-1.9.2-p320@catarse/gems/linecache19-0.5.12 for inspection.
 Results logged to /usr/local/rvm/gems/ruby-1.9.2-p320@catarse/gems/linecache19-0.5.12/ext/trace_nums/gem_make.out
 An error occurred while installing linecache19 (0.5.12), and Bundler cannot continue.
 Make sure that `gem install linecache19 -v '0.5.12'` succeeds before bundling.

あなたは理解するのを助けることができますか?

4

1 に答える 1

0

一部の gem は、単にダウンロードするのではなく、ローカルでビルドする必要があります。これは、gem のコードの一部が ruby​​ 以外 (通常は C) で書かれていることを意味します。非 Ruby コードを実行するには、ローカルでコンパイルおよびビルドする必要があります。そのような場合、Ruby 以外のコードをコンパイルおよびビルドできる環境が必要になります。

ここにネイティブの宝石に関する良い記事があります: http://patshaughnessy.net/2011/10/31/dont-be-terrified-of-building-native-extensions

このような場合、通常、gem をビルドするためにローカルにインストールする必要があるライブラリを追跡することが問題になります。

私は linecache19 に関するいくつかの問題を認識しており、これらに対処するための質問があります

于 2012-10-16T10:06:43.603 に答える