Oleg Burlaca wrote:
After struggling for two days, I've managed to install Apache2.2.9 +
ModPerl2.0.4.
Three crucial things were needed:
1. build mod_perl as a DSO and not static
Thats the default
2. build apache --with-included-apr
Correct, by default it uses apxs if its found in $PATH.
3. build libapreq2 --with-apr-config --with-apu-config
I assume you passed paths to those right, otherwise you've just found
your problem. Which is conflicting library versions. I'll bet you a beer.
i.e. --with-apr-config=/path/to/apr/bin/apr-1-config
I've started apache and tried to access a dynamic webpage (content via
PerlHandler) but got a SegFault.
I then recompiled mod_perl with MP_DEBUG=1 and used
http://perl.apache.org/docs/2.0/devel/debug/c.html as a reference.
Something isn't quite right. There should information in the () about
arguments passed. In this case looking for something was NULL but
shouldn't be.
You might try MP_MAINTAINER=1 and MP_DEBUG=1
#14 0xb7d78911 in modperl_callback () from
/usr/local/httpd_perl/modules/mod_perl.so
#15 0xb7d79279 in modperl_callback_run_handlers () from
/usr/local/httpd_perl/modules/mod_perl.so
#16 0xb7d797f5 in modperl_callback_per_srv () from
/usr/local/httpd_perl/modules/mod_perl.so
#17 0xb7d983f1 in modperl_post_read_request_handler () from
/usr/local/httpd_perl/modules/mod_perl.so
Notice httpd has debugging enabled successfully.
#18 0x0806995b in ap_run_post_read_request (r=0x8adfdc0) at protocol.c:1669
#19 0x0806bc24 in ap_read_request (conn=0x8ad27a8) at protocol.c:1011
#20 0x0808d785 in ap_process_http_connection (c=0x8ad27a8) at
http_core.c:183
#21 0x0807d909 in ap_run_process_connection (c=0x8ad27a8) at
connection.c:43
#22 0x080a1915 in child_main (child_num_arg=<value optimized out>) at
prefork.c:650
#23 0x080a1bd7 in make_child (s=0x8a6e4d8, slot=2) at prefork.c:746
#24 0x080a1c94 in startup_children (number_to_start=3) at prefork.c:764
#25 0x080a2719 in ap_mpm_run (_pconf=0x80c80a8, plog=0x81061a0,
s=0x8a6e4d8) at prefork.c:985
#26 0x08064485 in main (argc=135028896, argv=0x8ad05c8) at main.c:730
The perlhandler is simple enough, I found that if I comment the
following code from my handler and restart apache, it will run ok.
my @param_names = $r->param;
foreach (@param_names) {
$form->{$_} = $r->param($_);
}
in the code above $r = Apache2::Request->new(shift);
Above comments about conflicting libraries backs this up based on whats
failing
--
------------------------------------------------------------------------
Philip M. Gollucci ([EMAIL PROTECTED])
o:703.549.2050x206
Senior System Admin - Riderway, Inc.
http://riderway.com / http://ridecharge.com
1024D/DB9B8C1C B90B FBC3 A3A1 C71A 8E70 3F8C 75B8 8FFB DB9B 8C1C
Work like you don't need the money,
love like you'll never get hurt,
and dance like nobody's watching.