Re: Apache crashing on mod_perl installation.
-> No, I lied. I'd try recompiling (make clean in both directories, etc.) -> with no funny business first, it's easier than debugging... Well, I ignored the source code investigation, and did as you suggested, after reading that one could modify the args to apache's configure as follows: -- perl Makefile.PL USE_APACI=1 APACI_ARGS="--without-execstrip --prefix=~/software/try2/ap-install" -- So, that made the software with my favorite parameters. Once it was all made, I just had to change the Group away from the default of #-1 & everything seems to have worked. I'm still confused as to why the other method !$#@%# didn't work, but I think my investigations will have to wait 'til I have a pressing need for it ;). Incidentally, I think the 'APACI_ARGS' should be added into the installation instructions explicitly, in e.g. mod_perl-xxx/INSTALL. Its first mention in the perl.apache.org guide is 80% of the way down -- under the gdb symbols answer! cheers, --titus
Re: Apache crashing on mod_perl installation.
-> On Tue, 11 Dec 2001, Titus Brown wrote: -> -> > Do you know how I can turn on debugging symbols so that gdb can give me -> > more info (about line number, etc.)? -> > -> > I've forced 'gcc' to always have the -g flag on, but that doesn't seem -> > to be enough for some reason... -> -> The Guide is your friend: -> -> http://perl.apache.org/guide/debug.html#gdb_says_there_are_no_debugging_ Ahh, thanks. -> Please keep the mod_perl Mailing List included in your posts, so that -> everyone feels the benefit. Will do -- I had a nasty feeling the answer was in the FAQ, but I couldn't find it ;(. The core dump happens on the dPPDIR call in the beginning of the perl_handler function in mod_perl.c (line 820 in the latest dist). The line expands to: #define dPPDIR \ perl_dir_config *cld = (perl_dir_config *)get_module_config(r->per_dir_config, &perl_module) gdb claims that neither 'r' nor perl_module are NULL or otherwise evil, although r->per_dir_config is NULL. Any ideas? thanks, --t
Re: Apache crashing on mod_perl installation.
-> > EXTRA_CFLAGS1=`$(SRCDIR)/apaci` -> > EXTRA_LIBS=`perl -MExtUtils::Embed -e ldopts` -> > EXTRA_CFLAGS=$(EXTRA_CFLAGS1) `perl -MExtUtils::Embed -e ccopts` -> -> H. Have you tried building without all this messing about with -> the Makefile? Bear in mind these are in the instructions for installation for mod_perl ;). But no, I haven't, because I haven't figured out how to have it (mod_perl) specify a different path in configuring apache, and I don't want it to install in the default place. -> > did make & make install. -> -> make install as root? yep. -> > crashes on first connection attempt to 'localhost:8080/', although -> > 'localhost:8080/index.html' works fine. -> [snip] -> > People have had this error before, to judge from the mailing list -> -> Can you point me to examples? I don't recall seeing anything quite -> like this before. People have had problems with mod_perl and child pids core dumping, at least; http://www.mail-archive.com/modperl@apache.org/msg21703.html is one of the (~6) messages I found dealing with black-box seg faults... http://aspn.activestate.com/ASPN/Mail/Message/modperl/784385 is another one, to which you responded, in fact ;). I don't see any followups from the original person tho. cheers, --titus
Re: Apache crashing on mod_perl installation.
-> > When I do a gdb on the resulting core dump, I find that it's crashing in -> > perl_handler(). -> > -> > Any ideas? -> -> See modperl/SUPPORT OK, apache 1.3.22 mod_perl 1.26 Output of 'perl -V' attached. I configured Apache with: % ./configure --prefix=~/software/try2/ap-install then ran 'perl Makefile.PL' in the mod_perl directory. It found the source directory correctly, and I told it *not* to autobuild apache. Inside mod_perl directory, make make install w/o error. I then returned to the apache directory, issued: ./configure --prefix=~/software/try2/ap-install --activate-module=src/modules/perl/libperl.a modified src/Makefile to include the correct stuff: EXTRA_CFLAGS1=`$(SRCDIR)/apaci` EXTRA_LIBS=`perl -MExtUtils::Embed -e ldopts` EXTRA_CFLAGS=$(EXTRA_CFLAGS1) `perl -MExtUtils::Embed -e ccopts` did make & make install. % bin/httpd -X crashes on first connection attempt to 'localhost:8080/', although 'localhost:8080/index.html' works fine. The error_log just says that the child pid exited abruptly. Error message from w/in GDB: -- % gdb bin/httpd (gdb) r -X Starting program: /disk/u/t/software/try2/ap-install/bin/httpd -X Program received signal SIGSEGV, Segmentation fault. 0x80642ed in perl_handler () (gdb) where #0 0x80642ed in perl_handler () #1 0x80acfe9 in ap_invoke_handler () #2 0x80c1e8f in ap_some_auth_required () #3 0x80c1efa in ap_process_request () #4 0x80b8df0 in ap_child_terminate () #5 0x80b8fb5 in ap_child_terminate () #6 0x80b9136 in ap_child_terminate () #7 0x80b97cd in ap_child_terminate () #8 0x80ba02c in main () #9 0x4006a9cb in __libc_start_main (main=0x80b9c98 , argc=2, argv=0xb854, init=0x8061d48 <_init>, fini=0x8154024 <_fini>, rtld_fini=0x4000aea0 <_dl_fini>, stack_end=0xb84c) at ../sysdeps/generic/libc-start.c:92 -- I've tried to compile with -g but for whatever reason the symbols don't seem to be coming through. Ergh. Help? People have had this error before, to judge from the mailing list archives, but I haven't seen a useful solution yet. cheers, --titus Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=linux, osvers=2.4.6, archname=i686-linux uname='linux floating 2.4.6 #3 smp thu jul 19 18:10:41 pdt 2001 i686 unknown ' config_args='' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='cc', ccflags ='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2', cppflags='-fno-strict-aliasing -I/usr/local/include' ccversion='', gccversion='egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 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 -lutil perllibs=-lnsl -ldl -lm -lc -lposix -lcrypt -lutil libc=/lib/libc-2.1.3.so, 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): Compile-time options: USE_LARGE_FILES Built under linux Compiled at Oct 19 2001 17:22:15 @INC: /usr/local/lib/perl5/5.6.1/i686-linux /usr/local/lib/perl5/5.6.1 /usr/local/lib/perl5/site_perl/5.6.1/i686-linux /usr/local/lib/perl5/site_perl/5.6.1 /usr/local/lib/perl5/site_perl .
Apache crashing on mod_perl installation.
Hi all, I'm having a frustrating time with mod_perl... Configuration: -- apache 1.3.22 -- mod_perl 1.26 Static configuration & installation all goes fine, and when I run httpd (w/o modification, off of a straight install) the child pids crash when loading /. (Loading /index.html works fine. Perl files do not.) The specific error messages is this: [Mon Dec 10 00:46:01 2001] [notice] child pid 31524 exit signal Segmentation fault (11), possible coredump in /disk/u/t/software/try2/ap-install When I do a gdb on the resulting core dump, I find that it's crashing in perl_handler(). Any ideas? thanks, --titus