windows - 洗濯 - 部品 が 壊れ た 英語




Windows上の宝石の更新-それは壊れていますか? (3)

私たちは立ち往生しているようです。 私は最後のバージョン(1.2.4)のためのmswin32の宝石がないことをここで見つけまし 、私は私のコンピュータにそれをインストールしようとし、同じ問題を抱えました。

以前のバージョンをインストールするとうまくいきます:

gem install sqlite3-ruby --version '1.2.3'

これはこの質問のフォローアップです。

私がWindows上でgem updateコマンドを発行すると、最新のバージョンにWindowsバイナリがない宝石に着くたびに、ネイティブ拡張を構築しようとしますが、これはもちろん失敗します。 例えば:

Updating sqlite3-ruby
Building native extensions.  This could take a while...
ERROR:  While executing gem ... (Gem::Installer::ExtensionBuildError)
  ERROR: Failed to build gem native extension.

c:/ruby/bin/ruby.exe extconf.rb update
checking for fdatasync() in rt.lib... no
checking for sqlite3.h... no

nmake
'nmake' is not recognized as an internal or external command,
operable program or batch file.

必要なプラットフォームを求めていた古い1.x以前の動作は、少なくとも更新を可能にしました。 問題のある宝石(現在sqlite3-rubyとhpricot)をアンインストールしてからアップデートを実行し、--versionスイッチを使って宝石を再インストールしない限り、私は全く更新できません。

誰もがこの謎に解決策を持っているか、それとも私たちはそれに固執していますか?

注意:

$ gem -v
1.2.0

$ ruby -v
ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]

注(2008年9月26日):私は宝石1.3.0にアップデートしたばかりで、この問題は解決しません。

注(2008年11月18日):宝石1.3.1に更新されただけで問題は解決しません。

注記(2009年4月28日): Gems( 1.3.2 )の最新バージョンは、アップデート中にネイティブ拡張の構築に失敗した宝石をスキップします。 つまり、問題は解決されています。 やめ!


RubyForgeのsqlite3-ruby ファイルリストを見ると、Visual Studio 6とMinGW(sqlite3-ruby-1.2.3-mswin32.gem&sqlite3-ruby-1.2.3-x86- mingw32.gem)。 しかし、バージョン1.2.4にはこのようなあらかじめ構築された宝石はありません。

Visual Studio 6またはMinGWがインストールされていて、コンパイラ環境変数が設定されている場合(少なくともVisual Studio 6ではMinGWについてはわかりませんが)、インストール中にgemがビルドされます。 宝石が新しいバージョンのVisual Studioでビルドされるかどうかはわかりません。


以下のコマンドを実行すると動作します:

gem install sqlite3-ruby --platform=mswin32




rubygems