Doug,

Sorry for the consistent eMails, but I guess I wasn't entirely correct in my
statment about my version of perl being the problem.  After some more tests, I've
found that things go wrong (ie. I get a Segfault) when I attempt to pre load the
Sybase::CTlib module (or any module that uses it) in the PerlRequire file.  But,
when I have the 'use Sybase::CTlib' inside of my handler, then everything is ok.

Any ideas ?

-Mark

Mark Haviland wrote:

> Doug,
>
> I think I just figured out my problem.  I upgraded my system, but was using a
> version of perl that I had compiled before my upgrade (duh!).  I set up an
> httpd server that came with redhat 6.2 (and mod_perl 1.23) and things seems to
> work fine.  It looks like i need to recompile perl :).
>
> -Mark
>
> Mark Haviland wrote:
>
> > Hi Doug,
> >
> > Sorry for the delayed response - I just got back into town yesterday so was
> > 'out of action' for awhile.
> >
> > Doug MacEachern wrote:
> >
> > > On Fri, 12 May 2000, Mark Haviland wrote:
> > >
> > > > Hey all...
> > > >
> > > > I just upgraded my box to redhat 6.2.2 and compiled Apache 1.3.12 with
> > > > mod_perl (1.23) as a DSO (outside the Apache tree using apxs).  Now,
> > > > modules that use to work are suddenly causing seg faults.  The one in
> > > > particular that doens't seem to jive with mod_perl is Sybase::CTlib.
> > > > Has anybody else seen this problem ?
> > >
> > > what versions of things did you upgrade from?  where you using dso with
> > > the older versions?
> >
> > I upgraded from mod_perl 1.21.  Yes I was using dso with the prior
> > version.  Here's some info about the version of perl that I compiled
> > against:
> >
> > Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
> >   Platform:
> >     osname=linux, osvers=2.2.5-15, archname=i686-linux
> >     uname='linux hsimrhpc1.harmonic.com 2.2.5-15 #1 mon apr 19 23:00:46 edt
> > 1999 i686 unknown '
> >     hint=previous, useposix=true, d_sigaction=define
> >     usethreads=undef useperlio=undef d_sfio=undef
> >   Compiler:
> >     cc='cc', optimize='-O2', gccversion=egcs-2.91.66 19990314/Linux
> > (egcs-1.1.2 release)
> >     cppflags='-Dbool=char -DHAS_BOOL'
> >     ccflags ='-Dbool=char -DHAS_BOOL'
> >     stdchar='char', d_stdstdio=undef, usevfork=false
> >     intsize=4, longsize=4, ptrsize=4, doublesize=8
> >     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
> >     alignbytes=4, usemymalloc=n, prototype=define
> >   Linker and Libraries:
> >     ld='cc', ldflags =' -L/usr/local/lib'
> >     libpth=/usr/local/lib /lib /usr/lib
> >     libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt
> >     libc=, so=so, useshrplib=false, libperl=libperl.a
> >   Dynamic Linking:
> >     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
> >     cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
> >
> > Characteristics of this binary (from libperl):
> >   Built under linux
> >   Compiled at Oct 13 1999 10:39:19
> >   %ENV:
> >     PERL5LIB="/usr/hsi/perl5/lib"
> >   @INC:
> >     /usr/hsi/perl5/lib
> >     /usr/hsi/perl5/lib/5.00503/i686-linux
> >     /usr/hsi/perl5/lib/5.00503
> >     /usr/hsi/perl5/lib/site_perl/5.005/i686-linux
> >     /usr/hsi/perl5/lib/site_perl/5.005
> >     .
> >
> > >
> > >
> > > > unload_xs_so: 0x8396fc0
> > >
> > > hmm, i wonder if the dso "fix" broke things for you, what happens if you
> > > comment out this line of mod_perl.c:
> > >     unload_xs_so(librefs);
> >
> > I uncommented the line and now the server (httpd) just cores when I attempt
> > to start...
> >
> > /usr/hsi/apache-1.3.12/bin/hsi-httpd -X -f
> > /usr/hsi/apache-1.3.12/conf/hsi-httpd.conf.2080
> > perl_parse args: '/dev/null' ...allocating perl interpreter...ok
> > constructing perl interpreter...ok
> > ok
> > running perl interpreter...ok
> > mod_perl: 0 END blocks encountered during server startup
> > loading perl module 'Apache'...loading perl module
> > 'Apache::Constants::Exports'...ok
> > ok
> > loading perl module 'Tie::IxHash'...ok
> > perl_section: </FilesMatch>
> > perl_section: </DirectoryMatch>
> > perl_section: </Files>
> > perl_section: </Directory>
> > perl_section: </VirtualHost>
> > perl_section: </LocationMatch>
> > perl_section: </Location>
> > PerlRequire: arg=`conf/startup_cfg.pl'
> > attempting to require `conf/startup_cfg.pl'
> > Segmentation fault (core dumped)
> >
> > It seems that is cores when it reaches the line for "use  Sybase::CTlib;"
> > in my 'conf/statup_cfg.pl' file.
> >
> > Now, when I look at the CTlib.pm I notice the following:
> >
> > package Sybase::CTlib;
> >
> > require Exporter;
> > use AutoLoader;
> > require DynaLoader;
> >
> > use Carp;
> > .
> > .
> > .
> >
> > Perhaps something to do with the Exporter or DynaLoader ??
> >
> > -Mark

Reply via email to