mongrel_service gem barfs on ruby 1.8.7 (2010-01-10 patchlevel 249) [i386-mingw32]

37 views
Skip to first unread message

Roy Pardee

unread,
Jul 13, 2010, 10:54:09 PM7/13/10
to rubyinstaller
Hey All,

Probably this is not a rubyinstaller issue, but I thought I would ask here anyway.  I'd like to run a mongrel server as a windows service, but am stymied by the mongrel_service install.  I'm running the subject version w/devkit installed.  Gem install barf is below.

Is there a workaround on this, or is it no longer supported, or...?

Many thanks!

-Roy

C:\Documents and Settings\pardre1>gem install mongrel_service
Building native extensions.  This could take a while...
ERROR:  Error installing mongrel_service:
        ERROR: Failed to build gem native extension.

C:/Ruby/bin/ruby.exe extconf.rb
checking for RegisterServiceCtrlHandlerEx()... yes
checking for EnumServicesStatusEx()... yes
checking for QueryServiceStatusEx()... yes
creating Makefile

make
gcc -I. -I. -IC:/Ruby/lib/ruby/1.8/i386-mingw32 -I. -DHAVE_REGISTERSERVICECTRLHA
NDLEREX -DHAVE_ENUMSERVICESSTATUSEX -DHAVE_QUERYSERVICESTATUSEX    -g -O2    -c
service.c
service.c: In function `Ruby_Service_Ctrl':
service.c:105: error: `__try' undeclared (first use in this function)
service.c:105: error: (Each undeclared identifier is reported only once
service.c:105: error: for each function it appears in.)
service.c:105: error: syntax error before '{' token
service.c:129: error: `__finally' undeclared (first use in this function)
service.c:129: error: syntax error before '{' token
service.c: At top level:
service.c:134: error: conflicting types for 'rb_thread_polling'
C:/Ruby/lib/ruby/1.8/i386-mingw32/intern.h:217: error: previous declaration of '
rb_thread_polling' was here
service.c:134: error: conflicting types for 'rb_thread_polling'
C:/Ruby/lib/ruby/1.8/i386-mingw32/intern.h:217: error: previous declaration of '
rb_thread_polling' was here
service.c:134: warning: data definition has no type or storage class
service.c:135: error: syntax error before '}' token
service.c:140: error: `list' undeclared here (not in a function)
service.c:140: error: initializer element is not constant
service.c:141: error: syntax error before "if"
service.c:145: warning: data definition has no type or storage class
service.c:146: error: syntax error before '}' token
service.c:147: warning: parameter names (without types) in function declaration
service.c:147: error: conflicting types for 'SetEvent'
C:/Ruby/devkit/gcc/3.4.5/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbas
e.h:1911: error: previous declaration of 'SetEvent' was here
service.c:147: error: conflicting types for 'SetEvent'
C:/Ruby/devkit/gcc/3.4.5/bin/../lib/gcc/mingw32/3.4.5/../../../../include/winbas
e.h:1911: error: previous declaration of 'SetEvent' was here
service.c:147: warning: data definition has no type or storage class
service.c:149: error: syntax error before "return"
service.c: In function `Service_Ctrl':
service.c:160: error: `__try' undeclared (first use in this function)
service.c:160: error: syntax error before '{' token
service.c: At top level:
service.c:165: error: syntax error before '{' token
service.c:195: error: syntax error before numeric constant
service.c:195: error: conflicting types for 'SetTheServiceStatus'
service.c:44: error: previous declaration of 'SetTheServiceStatus' was here
service.c:195: error: conflicting types for 'SetTheServiceStatus'
service.c:44: error: previous declaration of 'SetTheServiceStatus' was here
service.c:195: warning: data definition has no type or storage class
service.c:217: error: conflicting types for 'SetTheServiceStatus'
service.c:195: error: previous declaration of 'SetTheServiceStatus' was here
service.c:217: error: conflicting types for 'SetTheServiceStatus'
service.c:195: error: previous declaration of 'SetTheServiceStatus' was here
service.c: In function `service_start':
service.c:1603: warning: passing arg 3 of `StartServiceA' from incompatible poin
ter type
service.c:2131:2: warning: no newline at end of file
make: *** [service.o] Error 1


Gem files will remain installed in C:/Ruby/lib/ruby/gems/1.8/gems/win32-service-0.5.2 for inspection.
Results logged to C:/Ruby/lib/ruby/gems/1.8/gems/win32-service-0.5.2/gem_make.out


--
Roy Pardee
http://facebook.com/rpardee

Luis Lavena

unread,
Jul 14, 2010, 8:40:10 AM7/14/10
to rubyin...@googlegroups.com
On Tue, Jul 13, 2010 at 11:54 PM, Roy Pardee <rpa...@gmail.com> wrote:
> Hey All,
>
> Probably this is not a rubyinstaller issue, but I thought I would ask here
> anyway.  I'd like to run a mongrel server as a windows service, but am
> stymied by the mongrel_service install.  I'm running the subject version
> w/devkit installed.  Gem install barf is below.
>
> Is there a workaround on this, or is it no longer supported, or...?
>

Hello Roy.

The issue with current mongrel_service is that depends on
win32-service gem, which do not work under GCC due the usage of
Structured Exception Handling (SEH) that only Microsoft Compiler
supports.

There is a pre-release version:

http://rubygems.org/gems/mongrel_service/versions/0.4.beta3

That workaround that issue, but I haven't found the time to finalize
it, since there are a few open items still in it:

http://github.com/fauna/mongrel_service/issues

Is not dead, but haven't been actively using it lately to feel these
problems (also, because work has been keeping me extremely busy).

Please let me know if that helps.

Regards,
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Roy Pardee

unread,
Jul 14, 2010, 8:46:08 AM7/14/10
to rubyin...@googlegroups.com
On Wed, Jul 14, 2010 at 5:40 AM, Luis Lavena <luisl...@gmail.com> wrote:
On Tue, Jul 13, 2010 at 11:54 PM, Roy Pardee <rpa...@gmail.com> wrote:
> Hey All,
>
> Probably this is not a rubyinstaller issue, but I thought I would ask here
> anyway.  I'd like to run a mongrel server as a windows service, but am
> stymied by the mongrel_service install.  I'm running the subject version
> w/devkit installed.  Gem install barf is below.
>
> Is there a workaround on this, or is it no longer supported, or...?
>

Hello Roy.

The issue with current mongrel_service is that depends on
win32-service gem, which do not work under GCC due the usage of
Structured Exception Handling (SEH) that only Microsoft Compiler
supports.

There is a pre-release version:

http://rubygems.org/gems/mongrel_service/versions/0.4.beta3

That workaround that issue, but I haven't found the time to finalize
it, since there are a few open items still in it:

http://github.com/fauna/mongrel_service/issues

Is not dead, but haven't been actively using it lately to feel these
problems (also, because work has been keeping me extremely busy).

Please let me know if that helps.


That's very helpful--many thanks.  I'll figure out something else to do...

Thanks!
 
Reply all
Reply to author
Forward
0 new messages