Problems starting Apache 2.2 with mod_ruby

Michael Sullivan <[email protected]> Tue, 10 Jan 2006 18:16:22 +0900
Newsgroups gmane.comp.apache.mod-ruby
Message-ID <[email protected]>
Hi,

I asked this the other day, but there have been no replies, so I'll  
post the problem again with some additional information.  I have  
tried two approaches to getting mod_ruby installed under Apache 2.2.

First, I have used source code I have modified myself, which has all  
function calls updated in the source and a few other items like the  
#define for _LARGEFILE64_SOURCE.

Second I have applied to a different source tree the patch posted a  
few days ago, which defines macros for the new Apache API as well as  
cleaning up the _LARGEFILE64_SOURCE item as well.

Both compile cleanly except for mod_ruby.c which produces the following:

gcc -g -O2  -fPIC -Wall  -I. -I/usr/local/lib/ruby/1.8/sparc- 
solaris2.9 -I/usr/local/apache2/include   -c mod_ruby.c
mod_ruby.c:151: warning: missing braces around initializer
mod_ruby.c:151: warning: (near initialization for `ruby_cmds[0].func')
mod_ruby.c:151: warning: initialization from incompatible pointer type
mod_ruby.c:153: warning: initialization from incompatible pointer type
mod_ruby.c:155: warning: initialization from incompatible pointer type
mod_ruby.c:157: warning: initialization from incompatible pointer type
mod_ruby.c:159: warning: initialization from incompatible pointer type
mod_ruby.c:161: warning: initialization from incompatible pointer type
mod_ruby.c:163: warning: initialization from incompatible pointer type
mod_ruby.c:165: warning: initialization from incompatible pointer type
mod_ruby.c:167: warning: initialization from incompatible pointer type
mod_ruby.c:169: warning: initialization from incompatible pointer type
mod_ruby.c:171: warning: initialization from incompatible pointer type
mod_ruby.c:173: warning: initialization from incompatible pointer type
mod_ruby.c:175: warning: initialization from incompatible pointer type
mod_ruby.c:177: warning: initialization from incompatible pointer type
mod_ruby.c:179: warning: initialization from incompatible pointer type
mod_ruby.c:181: warning: initialization from incompatible pointer type
mod_ruby.c:183: warning: initialization from incompatible pointer type
mod_ruby.c:186: warning: initialization from incompatible pointer type
mod_ruby.c:189: warning: initialization from incompatible pointer type
mod_ruby.c:192: warning: initialization from incompatible pointer type
mod_ruby.c:195: warning: initialization from incompatible pointer type


When I try to start Apache using mod_ruby, I get the following message:

[root@www mod_ruby-1.2.4]# /usr/local/apache2/bin/apachectl start
httpd: Syntax error on line 106 of /usr/local/apache2/conf/ 
httpd.conf: Can't locate API module structure `mod_ruby' in file /usr/ 
local/apache2/modules/mod_ruby.so: ld.so.1: httpd: fatal: mod_ruby:  
can't find symbol

Without mod_ruby, Apache 2.2 runs normally, as advertised.

I'm using GCC and Solaris 9.  Here's the relevant version information.

[root@www mod_ruby-1.2.4]# gcc -v
Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.4/specs
Configured with: ./configure --enable-shared
Thread model: posix
gcc version 3.4.4
[root@www mod_ruby-1.2.4]# uname -a
SunOS www.mydomain.com 5.9 Generic_118558-19 sun4u sparc SUNW,Ultra-5_10

I'm not sure if the compiler warning and the Apache startup message  
are related.  Has anyone else had this and been able to work through  
this issue?  Is there something I'm missing?

Thanks,

Mike

--
Mobile: +81-80-3202-2599
Office: +81-3-3395-6055

"Failing to plan, is planning to fail... plan for the worst, hope for  
the best"