> I posted this already, but haven't seen it come across so I'm trying
> again. Please forgive me if you've seen it before.
>
> I'm trying to build mod_perl as a DSO under Solaris 2.6 with Perl 5.6.0
> and I'm having no luck. The system dumps core. I've tried enabling
> and disabling expat, I've tried building the core as a DSO, all with no
> luck.
>
> Here are the relevant details of my most recent unsuccessful attempt:
>
> 1. The Perl build:
>
> Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration:
> Platform:
> osname=solaris, osvers=2.6, archname=sun4-solaris
> uname='sunos usl 5.6 generic_105181-17 sun4u sparc sunw,ultra-5_10 '
> config_args='-Dbincompat5005 -Dprefix=/usrl1/home/pweiss/perl-56
> -Doptimize=-O -g -Dcc=gcc -Uinstallusrbinperl -Accflags=-DPERL_POLLUTE
> -ds'
> hint=recommended, useposix=true, d_sigaction=define
> usethreads=undef use5005threads=undef useithreads=undef
> usemultiplicity=undef
> useperlio=undef d_sfio=undef uselargefiles=define
> use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
> Compiler:
> cc='gcc', optimize='-O -g', gccversion=2.8.1
> cppflags='-DPERL_POLLUTE -DDEBUGGING -I/usr/local/include'
> ccflags ='-DPERL_POLLUTE -DDEBUGGING -I/usr/local/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
> stdchar='unsigned char', d_stdstdio=define, usevfork=false
> intsize=4, longsize=4, ptrsize=4, doublesize=8
> d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
> ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
> lseeksize=8
> alignbytes=8, usemymalloc=y, prototype=define
> Linker and Libraries:
> ld='gcc', ldflags =' -L/usr/local/lib '
> libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
> libs=-lsocket -lnsl -lgdbm -ldl -lm -lc -lcrypt -lsec
> libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
> Dynamic Linking:
> dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
> cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'
>
>
> Characteristics of this binary (from libperl):
> Compile-time options: DEBUGGING USE_LARGE_FILES
> Built under solaris
> Compiled at Mar 29 2000 01:37:48
> %ENV:
> PERL5LIB="/usrl1/home/pweiss/perllib"
> @INC:
> /usrl1/home/pweiss/perllib
> /usrl1/home/pweiss/perl-56/lib/5.6.0/sun4-solaris
> /usrl1/home/pweiss/perl-56/lib/5.6.0
> /usrl1/home/pweiss/perl-56/lib/site_perl/5.6.0/sun4-solaris
> /usrl1/home/pweiss/perl-56/lib/site_perl/5.6.0
> /usrl1/home/pweiss/perl-56/lib/site_perl
>
>
> 2. The modperl configuration (I've tried both 1.22 and the latest CVS
> version)
>
> perl Makefile.PL EVERYTHING=1 PERL_TRACE=1 USE_DSO=1 PERL_MARK_WHERE=1
>
>
> 3. The apache configuration (its 1.3.12):
>
> ./configure \
> "--with-layout=Apache" \
> "--prefix=/usrl1/home/pweiss/apache" \
> "--activate-module=src/modules/perl/libperl.a" \
> "--enable-module=rewrite" \
> "--enable-module=proxy" \
> "--enable-shared=perl" \
> "--enable-shared=max" \
> "$@"
>
>
>
> It then throws both feet in the air. Here is the backtrace:
>
>
> Starting program: /usrl1/home/pweiss/apache/bin/httpd -d . -f
> conf/httpd.conf
>
> Program received signal SIGBUS, Bus error.
> 0xef1f4820 in Perl_malloced_size (p=0xfffffff5) at malloc.c:1841
> (gdb) bt
> #0 0xef1f4820 in Perl_malloced_size (p=0xfffffff5) at malloc.c:1841
> #1 0xef24899c in Perl_sv_grow (sv=0xaf9b8, newlen=242) at sv.c:1139
> #2 0xef253a70 in Perl_sv_vcatpvfn (sv=0xaf9b8, pat=0xf0 <Address 0xf0 out
> of bounds>, patlen=240, args=0xeffff67c, svargs=0x0,
> svmax=0, maybe_tainted=0x0) at sv.c:6354
> #3 0xef2524f0 in Perl_sv_vsetpvfn (sv=0xaf9b8, pat=0xef2a0400 "%240s",
> patlen=5, args=0xeffff67c, svargs=0x0, svmax=0,
> maybe_tainted=0x0) at sv.c:5691
> #4 0xef230d5c in Perl_vform (pat=0xef2a0400 "%240s", args=0xeffff67c) at
> util.c:1413
> #5 0xef230d1c in Perl_form (pat=0xef2a0400 "%240s") at util.c:1404
> #6 0xef1f13c4 in S_init_main_stash () at perl.c:2421
> #7 0xef1ede18 in S_parse_body (env=0x0, xsinit=0xef1c77b4 <xs_init>) at
> perl.c:914
> #8 0xef1edc60 in perl_parse (my_perl=0x0, xsinit=0xef1c77b4 <xs_init>,
> argc=2, argv=0xeffff8a8, env=0x0) at perl.c:857
> #9 0xef1c2d1c in perl_startup (s=0xa3dd8, p=0xa3db0) at mod_perl.c:701
> #10 0xef1c2538 in perl_module_init (s=0xa3dd8, p=0xa3db0) at
> mod_perl.c:590
> #11 0x23af0 in ap_init_modules ()
> #12 0x32284 in main ()
> (gdb)
>
> I get the same result even if mod_perl is the only DSO and all the others
> are
> static.
>
>
> Please help!
>
> Thanks,
> Paul
>