Re: Problems starting Apache 2.2 with mod_ruby

Oded Arbel <[email protected]> Tue, 10 Jan 2006 12:10:23 +0200
Newsgroups gmane.comp.apache.mod-ruby
Message-ID <[email protected]>
On Tuesday, 10 בJanuary 2006 11:16, Michael Sullivan wrote:
> Both compile cleanly except for mod_ruby.c which produces the
> following:
>
> mod_ruby.c:151: warning: initialization from 
> incompatible pointer type 

This is probably unrelated to the actual problem, but I suggest you fix 
that as well - its often a warning about potential crashes.

> 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

Apparently, the API module structure (AP_MODULE_DECLARE_DATA, IIRC) 
probably have changed with 2.2, and so mod_ruby compiled with the old 
definition no longer can be loaded as an apache DSO.

There was similar trouble with the upgrade from apache 1.3 to 2.0 in 
many modules, and I've read that using apxs to compile your module 
should solve all of those problems. 

I think that by getting mod_ruby to compile with apxs we can solve most 
of the grief involved in this and future API ugprades.

-- 
Oded

::..
Frobnicate, v.:
        To manipulate or adjust, to tweak.  Derived from FROBNITZ. 
Usually abbreviated to FROB.  Thus one has the saying "to frob a frob." 
See TWEAK and TWIDDLE.  Usage: FROB, TWIDDLE, and TWEAK sometimes 
connote points along a continuum.  FROB connotes aimless manipulation; 
TWIDDLE connotes gross manipulation, often a coarse search for a proper 
setting; TWEAK connotes fine-tuning.  If someone is turning a knob on 
an oscilloscope, then if he's carefully adjusting it he is probably 
tweaking it; if he is just turning it but looking at the screen he is 
probably twiddling it; but if he's just doing it because turning a knob 
is fun, he's frobbing it.