読者です 読者をやめる 読者になる 読者になる

Thinよりさらに高速と謳われているEbbを使ってみたかったのだが・・・

Ruby Rails gems VC++

こことかこことか見て、挑戦してみたが見事に惨敗。。。orz
おうちに帰ってよーくsource code追ってみます。
CygwinMinGWに逃げようかなー。

[E:\ruby-1.8.7-p174\lib\ruby\1.8]
$ gem install ebb
Building native extensions.  This could take a while...
ERROR:  Error installing ebb:
        ERROR: Failed to build gem native extension.

E:/ruby-1.8.7-p174/bin/ruby.exe extconf.rb
checking for sys/select.h... no
checking for poll.h... no
checking for sys/epoll.h... no
checking for sys/event.h... no
checking for port.h... no
checking for sys/inotify.h... no
creating Makefile

nmake

Microsoft(R) Program Maintenance Utility Version 8.00.50727.42
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl -nologo -I. -IE:/ruby-1.8.7-p174/lib/ruby/1.8/i386-mswin32 -IE:/ruby-1.8.7-p174/lib/ruby/1.8/i386-mswin32 -I. -MD -Zi  -O2b2xg- -G6 -IE:/ruby-1.8.7-p174/lib/ruby/gems/1.8/gems/ebb-0.3.2/libev -DEV_USE_MONOTONIC=0 -DRUBY_VERSION_CODE=187 -c -Tcebb_ffi.c
cl : コマンド ライン warning D9035 : オプション 'Og-' の使用は現在推奨されていません。今後のバージョンからは削除されます。
cl : コマンド ライン warning D9002 : 不明なオプション '-G6' を無視します
ebb_ffi.c
E:\ruby-1.8.7-p174\lib\ruby\gems\1.8\gems\ebb-0.3.2\libev\ev.c(339) : warning C4005: 'inline' : マクロが再定義されました。
        e:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\config.h(84) : 'inline' の
前の定義を確認してください
e:\ruby-1.8.7-p174\lib\ruby\gems\1.8\gems\ebb-0.3.2\libev\ev_win32.c(116) : warning C4996: '_ftime64' が古い形式として宣言されました。
        C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE\sys/timeb.h(152) : '_ftime64' の宣言を確認してください。
        メッセージ: 'This function or variable may be unsafe. Consider using _ftime64_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
ebb_ffi.c(135) : error C2275: 'ebb_connection' : この型は演算子として使用できません
        e:\ruby-1.8.7-p174\lib\ruby\gems\1.8\gems\ebb-0.3.2\ext\ebb.h(30) : 'ebb_connection' の宣言を確認してください。
ebb_ffi.c(135) : error C2065: 'connection' : 定義されていない識別子です。
ebb_ffi.c(136) : warning C4047: '=' : 間接参照のレベルが 'int' と 'ebb_connection *' で異なっています。
ebb_ffi.c(137) : warning C4047: 'return' : 間接参照のレベルが 'ebb_connection *' と 'int' で異なっています。
ebb_ffi.c(188) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(188) : error C2146: 構文エラー : ';' が、識別子 'f' の前に必要です。
ebb_ffi.c(188) : error C2065: 'f' : 定義されていない識別子です。
ebb_ffi.c(193) : error C2143: 構文エラー : ';' が '型' の前にありません。
ebb_ffi.c(195) : error C2065: 'i' : 定義されていない識別子です。
ebb_ffi.c(230) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(230) : error C2146: 構文エラー : ';' が、識別子 'env' の前に必要です。
ebb_ffi.c(230) : error C2065: 'env' : 定義されていない識別子です。
ebb_ffi.c(239) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(239) : error C2146: 構文エラー : ';' が、識別子 'method' の前に必要です。
ebb_ffi.c(239) : error C2065: 'method' : 定義されていない識別子です。
ebb_ffi.c(262) : error C2143: 構文エラー : ';' が '型' の前にありません。
ebb_ffi.c(263) : error C2065: 'server_port' : 定義されていない識別子です。
ebb_ffi.c(264) : warning C4047: '関数' : 間接参照のレベルが 'const char *' と 'int' で異なっています。
ebb_ffi.c(264) : warning C4024: 'rb_str_new2' : の型が 1 の仮引数および実引数と
異なります。
ebb_ffi.c(267) : error C2143: 構文エラー : ';' が '型' の前にありません。
ebb_ffi.c(268) : error C2065: 'client_ip' : 定義されていない識別子です。
ebb_ffi.c(269) : warning C4047: '関数' : 間接参照のレベルが 'const char *' と 'int' で異なっています。
ebb_ffi.c(269) : warning C4024: 'rb_str_new2' : の型が 1 の仮引数および実引数と異なります。
ebb_ffi.c(272) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(272) : error C2146: 構文エラー : ';' が、識別子 'version' の前に必要です。
ebb_ffi.c(272) : error C2065: 'version' : 定義されていない識別子です。
ebb_ffi.c(315) : error C2143: 構文エラー : ';' が '型' の前にありません。
ebb_ffi.c(316) : warning C4047: '==' : 間接参照のレベルが 'int' と 'void *' で異なっています。
ebb_ffi.c(319) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(319) : error C2146: 構文エラー : ';' が、識別子 'body' の前に必要です。
ebb_ffi.c(319) : error C2065: 'body' : 定義されていない識別子です。
ebb_ffi.c(331) : error C2223: '->fd' : 左側が構造体か共用体に対するポインタではありません。
ebb_ffi.c(331) : warning C4047: '関数' : 間接参照のレベルが 'int' と 'fd_set *'で異なっています。
ebb_ffi.c(331) : warning C4024: 'rb_w32_fdset' : の型が 1 の仮引数および実引数と異なります。
ebb_ffi.c(331) : error C2198: 'rb_w32_fdset' : 呼び出しに対する引数が少なすぎます。
ebb_ffi.c(332) : error C2223: '->fd' : 左側が構造体か共用体に対するポインタではありません。
ebb_ffi.c(332) : warning C4047: '関数' : 間接参照のレベルが 'int' と 'fd_set *'で異なっています。
ebb_ffi.c(332) : warning C4024: 'rb_thread_select' : の型が 1 の仮引数および実引数と異なります。
ebb_ffi.c(332) : error C2198: 'rb_thread_select' : 呼び出しに対する引数が少なすぎます。
ebb_ffi.c(334) : error C2223: '->read_watcher' : 左側が構造体か共用体に対するポインタではありません。
ebb_ffi.c(334) : warning C4022: 'ev_invoke' : 2 番目の実引数のポインタの型が、仮引数のポインタの型と異なります。
ebb_ffi.c(334) : error C2198: 'ev_invoke' : 呼び出しに対する引数が少なすぎます。
ebb_ffi.c(360) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(360) : error C2146: 構文エラー : ';' が、識別子 'rb_request' の前に必要です。
ebb_ffi.c(360) : error C2065: 'rb_request' : 定義されていない識別子です。
ebb_ffi.c(368) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(368) : error C2146: 構文エラー : ';' が、識別子 'rb_connection' の前に必要です。
ebb_ffi.c(368) : error C2065: 'rb_connection' : 定義されていない識別子です。
ebb_ffi.c(395) : error C2275: 'VALUE' : この型は演算子として使用できません
        E:\ruby-1.8.7-p174\lib\ruby\1.8\i386-mswin32\ruby.h(86) : 'VALUE' の宣言を確認してください。
ebb_ffi.c(395) : error C2146: 構文エラー : ';' が、識別子 'rb_connection' の前に必要です。
ebb_ffi.c(476) : error C2143: 構文エラー : ';' が '型' の前にありません。
ebb_ffi.c(482) : error C2065: 'r' : 定義されていない識別子です。
ebb_ffi.c(487) : error C2061: 構文エラー : 識別子 'connection_schedule_close'
ebb_ffi.c(487) : error C2059: 構文エラー : ';'
ebb_ffi.c(487) : error C2059: 構文エラー : '型'
ebb_ffi.c(552) : error C2065: 'connection_schedule_close' : 定義されていない識別子です。
ebb_ffi.c(552) : warning C4047: '関数' : 間接参照のレベルが 'VALUE (__cdecl *)()' と 'int' で異なっています。
ebb_ffi.c(552) : warning C4024: 'rb_define_singleton_method' : の型が 3 の仮引数および実引数と異なります。
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\BIN\cl.EXE"' :
Stop.


Gem files will remain installed in E:/ruby-1.8.7-p174/lib/ruby/gems/1.8/gems/ebb-0.3.2 for inspection.
Results logged to E:/ruby-1.8.7-p174/lib/ruby/gems/1.8/gems/ebb-0.3.2/ext/gem_make.out