3

Windows で bluecloth gem のバージョンを更新しようとすると、エラー メッセージが表示されます。Windows 用にインストールする必要がある別のバージョン、または使用できる bluecloth の代替バージョンはありますか? 残念ながら、私の開発環境は、私が使用している他のソフトウェアのために厳密に Windows です。それ以外の場合は、Linux 環境を使用します。

ここに私が得るもののコピーペーストがあります:

C:\Users\Developer1>gem update
インストールされた gem
を更新しています blueclothを更新
しています DevKit を含めるために PATH を一時的に強化しています...
ネイティブ拡張機能を構築しています。これには時間がかかる場合があります...
エラー: bluecloth のインストール中にエラーが発生しました:
エラー: gem ネイティブ拡張機能をビルドできませんでした。

C:/Ruby192/bin/ruby.exe extconf.rb
srand()
のチェック... はい random() の
チェック... rand() のチェックなし... はい
string.h の bzero() のチェック、 strings.h...
strcasecmp() のチェックなし... はい
strncasecmp() のチェック... はいmkdio.h のチェック... はい ruby​​/encoding.h のチェック... はい
extconf.h の 作成メイクファイル


make C:/Ruby192/bin/ruby -e "puts 'EXPORTS', 'Init_bluecloth_ext'" > bluecloth_ext-i386-mingw32.def gcc -I. -IC:/Ruby192/include/ruby-1.9.1/i386-mingw32 -I/C/Ruby192/include/ruby-1
.9.1/ruby/backward -I/C/Ruby192/include/ruby-1.9.1 -私。-DRUBY_EXTCONF_H=\"extconf.h\" -DVERSION=\"2.0.9\" -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field -初期化子 -Wno-long-long -I. -o bluecloth.o -c bluecloth.c
c:\ruby-devkit\mingw\bin../lib/gcc/mingw32/4.5.2/../../..
/../includeからインクルードされたファイル/windows.h:48:0、c:\ruby-devkit\mingw\bin../lib/gcc/mingw32/4.5.2/../../../../include/winsock2.h より
_
:22、
c:/Ruby192/include/ruby-1.9.1/ruby/win32.h:33 から、
c:/Ruby192/include/ruby-1.9.1/ruby/defines.h:205
から、c:/Ruby192/include/ruby-1.9.1/ruby/ruby.h:74
から、c:/Ruby192/ からinclude/ruby-1.9.1/ruby.h:32,
from bluecloth.h:14,
from bluecloth.c:25:
c:\ruby-devkit\mingw\bin../lib/gcc/mingw32/4.5.2 /../../../../include/windef.h:2
29:23: エラー: '署名されていない' が重複しています
c:\ruby-devkit\mingw\bin../lib/gcc/mingw32/4.5 .2/../../../../include/windef.h:2
38:23: エラー: '署名されていない' が重複しています
c:\ruby-devkit\mingw\bin../lib/gcc/mingw32 /4.5.2/../../../../include/windef.h:2
38:23: エラー: 宣言指定子に 2 つ以上のデータ型があります
c:\ruby-devkit\mingw\bin.. /lib/gcc/mingw32/4.5.2/../../../../include/windef.h:2
41:24: エラー: 'unsigned' が重複しています
make: * [bluecloth.o] エラー 1

Gem ファイルは、検査のために C:/Ruby192/lib/ruby/gems/1.9.1/gems/bluecloth-2.2.0 にインストールされたままになります。結果は C:/Ruby192/lib/ruby/gems/1.9.1/gems/bluecloth-2.2.0/ext/gem_make.out に記録されます 更新するものはありません

4

2 に答える 2

3

2.2.0のヘッダーファイルは、blueclothがWindowsでコンパイルされるのを防ぎます。ただし、自分でパッチを適用することはできます。Luis Lavenaが述べたように、パスを適用する必要があります。

  1. まだ実行gem install bluecloth -v '2.2.0'していない場合は実行します

  2. このパッチをファイルに適用しbluecloth.hます。私のマシンでは、このパッチは次の場所にあります。

    H:\Ruby193\lib\ruby\gems\1.9.1\gems\bluecloth-2.2.0\ext\bluecloth.h

  3. たとえば、bluecloth2.2.0ディレクトリに移動します

    H:\Ruby193\lib\ruby\gems\1.9.1\gems\bluecloth-2.2.0

  4. 実行しますrake gem(これには、いくつかの追加のgemをインストールする必要がある場合があります)。

    次に、で作成された.gemファイルが表示されます。

    H:\Ruby193\lib\ruby\gems\1.9.1\gems\bluecloth-2.2.0\pkg\bluecloth-2.2.0.gem

  5. このディレクトリを開き、パッチを適用したgemをインストールします。

    gem install bluecloth-2.2.0.gem --platform=ruby

于 2012-11-24T18:09:33.710 に答える