5

Windows マシンでいくつかの gem を更新しようとすると、事前にコンパイルされたバイナリを持たない gem に対して次のエラー出力が継続的に表示されます。

提供される構成オプション:

    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --srcdir=.
    --curdir
    --ruby=c:/server/ruby/bin/ruby

これらは、gem のインストール中にextconf.rb ruby​​ ファイルに提供される構成オプションです。

MinGWをインストールしたので、これらの gem をインストール、作成、およびコンパイルするために必要なものがすべて揃っているはずです。ただし、 extconf.rbが呼び出されたときに、 MinGWインクルード ディレクトリを指す適切なオプションが含まれるように、 RubyGems
の構成を変更する方法がわかりません。

4

5 に答える 5

3

あなたが求めているものになる可能性のあるDevKitがあります。

于 2008-10-04T18:12:54.940 に答える
1

これがネイティブの Windows Ruby で動作するかどうかはわかりませんが、Cygwin バージョンを使用していて、Cygwin が完全にインストールされている場合 (コンパイラなど)、問題はないはずです。コンパイル済みのものを必要とする宝石。

于 2008-10-04T08:19:01.847 に答える
1

ヤードボーイ、

残念ながら、更新しようとしている宝石について言及していませんでした。オプションの出力のみをそこに置きました。

また、これらの gem の中には、コンパイラー (MinGW) だけでなく、開発ヘッダーとライブラリーが必要なものもあります。

さらに、Ruby ビルドが MinGW で作成されている限り、MinGW は機能します。

これを緩和するためにいくつかの作業が行われていますが、Windows だけでなく、すべてのプラットフォームでコンパイラ、ヘッダー、およびライブラリの要件が必要です。

私のブログで詳細情報とリソースを見つけることができます

乾杯。

于 2009-06-04T12:18:03.230 に答える
0

私はちょうど同じ問題を抱えていました。

parsetree など、事前にコンパイルされたバイナリを持たない gem を Windows で実行するために見つけた唯一の方法は、Mingw を使用して Ruby ソースを再コンパイルし、いくつかのライブラリとアプリケーションをビジュアル C++ インストールからコピーすることでした。私がコピーしたものには、zlib ライブラリと iconv ライブラリとアプリケーションが含まれていました。

注: このセットアップをテスト構成として使用しています。私はそのようなセットアップを本番環境では使用しません (ライブラリをあるディストリビューションから別のディストリビューションに移動するとどうなるかは誰にもわかりません)。

于 2009-01-26T19:33:56.583 に答える
-1

一般に、私の経験では、UNIX システム用に設計されたコードを MinGW で動作させるのは非常に困難です。迅速な移植には、CygWin を使用してください。または、ネイティブの Windows シェルと OS API の使用を含め、Windows ホストへのソフトウェアの完全な移植を行います。これは、時間的にはかなり高価ですが、Windows を長期的にサポートする予定がある場合は、その価値があります。

この特定のソフトウェア パッケージに慣れていないため、これは、他の卑劣なコードを Windows に移植しようとしたときの一般的な観察にすぎません。

于 2008-10-08T18:48:07.800 に答える