Ok, this was *originally* PR 2809. I expct that my attempt to comemnt on a report that wasn't mine resulted in a new call (3259).
Anwyay, I have tracked down the problem (at least, I;ve tracked down
what was *my* problem).
When I build perl, I include the GDBM_FIle extension. So the perl
config end ups including "-lgdbm" in its list of libraries to load. The
mod_perl config picks this up and uses it for *its* load.
However, the gdbm libraries include an ndbm interface - the calls are
dbm_open() etc., but the underlyign implementation is a gdbm file.
Consequently, the mod_perl linking ends up using gdbm for AuthDbm
files (and yess, the gdbm implementation does open a *.pag file
only...).
So, the mod_pelr build needs to get the lgdbm out of the way. But it
can't, as the loading of libperl.a needs it....
So, what I did was to run a little script (appended) from within the
apache_1.3.3 directory thus:
./preempt-gdbm.pl `find . -name Makefile -exec fgrep -l lgdbm {} \;`
to change all "-lgdm" in Makefile to "-lc -lgdbm". At least it
works..... There might be a neater way to do this within the
mod_perl/apapche config - I don't know.
My personal feeling is that this is a bug in gdbm, for not giving you
the option to not have the ndbm entrypoints in your library.
preempt-gdbm.pl
Description: Perl program
