Posted at this site on November 8, 2001, with even the same misspelling of "runing":
Core dump of XML-Encoding-1.01 when runing "make test"
or after installation "perl test.pl" on Perl 5.6.1/
Linux i686:
[riechert@tairou XML-Encoding-1.01]$ make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/local/li
+b/perl5/5.6.1/i686-linux -I/usr/local/lib/perl5/5.6.1 test.pl
1..7
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
make: *** [test_dynamic] Segmentation fault (core dumped)
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuratio
+n:
Platform:
osname=linux, osvers=2.2.14-5.0, archname=i686-linux
uname='linux tairou.japanologie.kultur.uni-tuebingen.de 2.2.14-5.0 #1
+tue mar 7 21:07:39 est 2000 i686 unknown '
config_args='-de'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicit
+y=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_LARGEF
+ILE_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 rele
+ase)', 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', lse
+eksize=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 -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'
s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/
| [reply] [Watch: Dir/Any] [d/l] |
Even the same shell prompt for God's sake! Lame.
| [reply] [Watch: Dir/Any] |
For those occassions, the best aproach is to have a perl compiled with debugging information.
To do that, download the perl source from some CPAN mirror (get the same version you have on your machine), and run Configure accepting the defaults to the questions asked except for the two below that set the optimization flags and the place where you want this perl installed:
$ tar xzf perl-5.6.1
$ cd perl-5.6.1
$ ./Configure
...
What optimizer/debugger flag should be used? [-O2] -g -O0
...
Installation prefix to use? (~name ok) [/usr/local] /usr/local/perl/de
+bug/
Directory /usr/local/perl/debug/ doesn't exist. Use that name anyway?
+ [n] y
...
$ make && make test
$ su -c "make install"
...
Then recompile the module using this perl:
$ /usr/local/perl/debug/bin/perl Makefile.PL
$ make
Now you can run perl and the test script inside the (system) debugger and get meaningful information:
$ gdb /usr/local/perl/debug/bin/perl
...
(gdb) r -Mblib t/test.pl
...
# the segmentation fault signal will be cought
# by the debugger. To see where it happened
# run the backtrace command:
(gdb) bt
...
and at this point you can try to resolve the bug yourself, or send a bug report containing the backtrace to the module author.
| [reply] [Watch: Dir/Any] [d/l] [select] |
Just an observation:
The segfault happens after the tests have been successfully run - so it's something that's occurring during cleanup.
Maybe it's something that XML::Parser's DESTROY() method calls or does that's upsetting your perl 5.6.1. Did XML::Parser pass all its tests ?
Cheers, Rob | [reply] [Watch: Dir/Any] |