OK, I think I found one problem. The following two defines don't make
it from the Perl make to the CCFLAGS for the mod_perl:-(
`-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' (They are automatically
added by the Configure for perl and listed in the perl -V output below).
That causes the my_perl structure to be of different sizes/offsets
between perl and mod_perl. That works by accident with Perl 5.10.1 and
finally breaks with 5.14.[12]
Unfortunately even trying to run
/opt/kenai/bin/perl Makefile.PL DEFINE='-D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64'
is not enough:-( The defines still do not make it to the
src/modules/perl/Makefile:-( But after changing that Makefile by hand
and rebuilding, things seem to be working fine.
Thanks,
-- Marco
Some dbx output
- perl 5.10.1 & mod_perl dev from yesterday
-
[mw79288@kexdev03z1:/export/home/marcow/src/kenai-packages~subversion/mod_perl/modperl-2.0_20110927151300]
$ ~/dbx.x86 /opt/kenai/bin/perl
dbx.x86: warning: cannot find global initialization file: dbxrc
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.7' in
your .dbxrc
Reading perl
Reading ld.so.1
Reading libsocket.so.1
Reading libnsl.so.1
Reading libdl.so.1
Reading libm.so.2
Reading libpthread.so.1
Reading libc.so.1
(dbx.x86) loadobject -load ./blib/arch/auto/ModPerl/Const/Const.so
Reading Const.so
Loaded loadobject:
/export/home/marcow/src/kenai-packages~subversion/mod_perl/modperl-2.0_20110927151300/blib/arch/auto/ModPerl/Const/Const.so
(dbx.x86) stop in boot_ModPerl__Const
(2) stop in boot_ModPerl__Const
(dbx.x86) run -I../blib/arch -I../blib/lib \
> t/TEST -bugreport -verbose=0
Running: perl -I../blib/arch -I../blib/lib t/TEST -bugreport -verbose=0
(process id 17713)
Reading Cwd.so
Reading IO.so
Reading Fcntl.so
Reading Util.so
Reading Dumper.so
Reading Glob.so
Reading Socket.so
Reading HiRes.so
Reading librt.so.1
Reading POSIX.so
[warning] Skipping 'set unlimited ulimit for coredumps', since we are
running as a non-root user on Solaris
[warning] forcing re-configuration:
[warning] - configuration generated with old Apache-Test.
t@1 (l@1) stopped in boot_ModPerl__Const at line 89 in file "Const.c"
89 dVAR; dXSARGS;
(dbx.x86) print sizeof(*my_perl)
sizeof(*my_perl) = 2136
(dbx.x86) up
Current function is Perl_pp_entersub
2888 (void)(*CvXSUB(cv))(aTHX_ cv);
(dbx.x86) print sizeof(*my_perl)
sizeof(*my_perl) = 2152
(dbx.x86) where
current thread: t@1
dbx.x86: warning: can't find file
"/export/home/marcow/src/kenai-packages~subversion/perl/perl-5.10.1/perlmain.c"
dbx.x86: warning: see `help finding-files'
dbx.x86: warning: can't find file
"/export/home/marcow/src/kenai-packages~subversion/perl/perl-5.10.1/perlmain.c"
[1] boot_ModPerl__Const(my_perl = 0x8241e28, cv = 0x8eedb1c), line 89
in "Const.c"
=>[2] Perl_pp_entersub(my_perl = 0x8241e28), line 2888 in "pp_hot.c"
[3] Perl_runops_debug(my_perl = 0x8241e28), line 1968 in "dump.c"
[4] Perl_call_sv(my_perl = 0x8241e28, sv = 0x8eed58c, flags = 6),
line 2717 in "perl.c"
[5] Perl_call_list(my_perl = 0x8241e28, oldscope = 25, paramList =
0x8ee3c54), line 5264 in "perl.c"
[6] S_process_special_blocks(my_perl = 0x8241e28, fullname =
0x82e2540 "BEGIN", gv = 0x8eed5dc, cv = 0x8eed58c), line 5864 in "op.c"
[7] Perl_newATTRSUB(my_perl = 0x8241e28, floor = 381, o = 0x8ecbf48,
proto = (nil), attrs = (nil), block = 0x8ebe8a8), line 5835 in "op.c"
[8] Perl_utilize(my_perl = 0x8241e28, aver = 1, floor = 381, version
= (nil), idop = 0x8ecbaa8, arg = 0x8ecbb28), line 3886 in "op.c"
[9] Perl_yyparse(my_perl = 0x8241e28), line 659 in "perly.y"
[10] S_doeval(my_perl = 0x8241e28, gimme = 0, startop = (nil),
outside = (nil), seq = 11148U), line 2981 in "pp_ctl.c"
[11] Perl_pp_require(my_perl = 0x8241e28), line 3573 in "pp_ctl.c"
[12] Perl_runops_debug(my_perl = 0x8241e28), line 1968 in "dump.c"
[13] Perl_call_sv(my_perl = 0x8241e28, sv = 0x8ec8b24, flags = 6),
line 2717 in "perl.c"
[14] Perl_call_list(my_perl = 0x8241e28, oldscope = 19, paramList =
0x8ec8994), line 5264 in "perl.c"
[15] S_process_special_blocks(my_perl = 0x8241e28, fullname =
0x82e2540 "BEGIN", gv = 0x8ec8b44, cv = 0x8ec8b24), line 5864 in "op.c"
[16] Perl_newATTRSUB(my_perl = 0x8241e28, floor = 242, o = 0x8ecb9a8,
proto = (nil), attrs = (nil), block = 0x8ebe970), line 5835 in "op.c"
[17] Perl_utilize(my_perl = 0x8241e28, aver = 1, floor = 242, version
= (nil), idop = 0x8ecbb08, arg = 0x8ed0718), line 3886 in "op.c"
[18] Perl_yyparse(my_perl = 0x8241e28), line 659 in "perly.y"
[19] S_doeval(my_perl = 0x8241e28, gimme = 0, startop = (nil),
outside = (nil), seq = 4596U), line 2981 in "pp_ctl.c"
[20] Perl_pp_require(my_perl = 0x8241e28), line 3573 in "pp_ctl.c"
[21] Perl_runops_debug(my_perl = 0x8241e28), line 1968 in "dump.c"
[22] S_run_body(my_perl = 0x8241e28, oldscope