Subject: Perl crashes
To: None <tech-pkg@netbsd.org>
From: Pavel Cahyna <pcah8322@artax.karlin.mff.cuni.cz>
List: tech-pkg
Date: 11/01/2004 23:19:19
[ please Cc: me while replying ]

Hello,

when trying to compile p5-SVN-Mirror, perl always dumps core:
pavel@pc:/mnt/obj/pkgsrc/devel/p5-SVN-Mirror$ make
===> Checking for vulnerabilities in p5-SVN-Mirror-0.47
===> Configuring for p5-SVN-Mirror-0.47
*** ExtUtils::AutoInstall version 0.60
*** Checking for dependencies...
[Core Features]
[1]   Abort trap (core dumped) (cd ${dir} && /u...
*** Error code 134

Stop.
make: stopped in /mnt/obj/pkgsrc/devel/p5-SVN-Mirror
*** Error code 1

Stop.
make: stopped in /mnt/obj/pkgsrc/devel/p5-SVN-Mirror

This is the debugging output:

pavel@pc:~$ gdb /usr/pkg/bin/perl /var/tmp/perl.core  
GNU gdb 5.3nb1
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386--netbsdelf"...(no debugging symbols found)...
Core was generated by `perl'.
Program terminated with signal 6, Aborted.
Reading symbols from /usr/libexec/ld.elf_so...(no debugging symbols found)...
done.
Loaded symbols for /usr/libexec/ld.elf_so
Reading symbols from /usr/lib/libm387.so.0...(no debugging symbols found)...
done.
Loaded symbols for /usr/lib/libm387.so.0
Reading symbols from /usr/lib/libm.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libm.so.0
Reading symbols from /usr/lib/libcrypt.so.0...(no debugging symbols found)...
done.
Loaded symbols for /usr/lib/libcrypt.so.0
Reading symbols from /usr/lib/libc.so.12...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libc.so.12
Reading symbols from
/usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/Cwd/Cwd.so...
(no debugging symbols found)...done.
Loaded symbols for /usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/Cwd/Cwd.so
Reading symbols from /usr/pkg/lib/perl5/5.8.4/i386-netbsd/CORE/libperl.so...
(no debugging symbols found)...done.
Loaded symbols for /usr/pkg/lib/perl5/5.8.4/i386-netbsd/CORE/libperl.so
Reading symbols from
/usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/List/Util/Util.so...(no
debugging symbols found)...done.
Loaded symbols for /usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/List/Util/Util.so
---Type <return> to continue, or q <return> to quit---
Reading symbols from
/usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/File/Glob/Glob.so...(no
debugging symbols found)...done.
Loaded symbols for
/usr/pkg/lib/perl5/5.8.4/i386-netbsd/auto/File/Glob/Glob.so
Reading symbols from
/usr/pkg/lib/perl5/site_perl/5.8.4/i386-netbsd/auto/SVN/_Core/_Core.so...done.
Loaded symbols for
/usr/pkg/lib/perl5/site_perl/5.8.4/i386-netbsd/auto/SVN/_Core/_Core.so
Reading symbols from /usr/pkg/lib/libsvn_client-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_client-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_delta-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_delta-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_fs-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_fs-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_ra-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_ra-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_repos-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_repos-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_wc-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_wc-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_diff-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_diff-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_subr-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_subr-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_swig_perl-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_swig_perl-1.so.0
Reading symbols from /usr/pkg/lib/libswigpl.so...done.
Loaded symbols for /usr/pkg/lib/libswigpl.so
Reading symbols from /usr/pkg/lib/libaprutil-0.so.0...done.
Loaded symbols for /usr/pkg/lib/libaprutil-0.so.0
Reading symbols from /usr/pkg/lib/libexpat.so.0...done.
Loaded symbols for /usr/pkg/lib/libexpat.so.0
Reading symbols from /usr/pkg/lib/libapr-0.so.0...done.
Loaded symbols for /usr/pkg/lib/libapr-0.so.0
Reading symbols from /usr/lib/libresolv.so.1...done.
Loaded symbols for /usr/lib/libresolv.so.1
Reading symbols from /usr/lib/libpthread.so.0...done.
Loaded symbols for /usr/lib/libpthread.so.0
Reading symbols from /usr/lib/libintl.so.0...done.
Loaded symbols for /usr/lib/libintl.so.0
Reading symbols from /usr/pkg/lib/libsvn_fs_fs-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_fs_fs-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_ra_local-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_ra_local-1.so.0
Reading symbols from /usr/pkg/lib/libsvn_ra_svn-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_ra_svn-1.so.0
---Type <return> to continue, or q <return> to quit---
Reading symbols from /usr/pkg/lib/libsvn_ra_dav-1.so.0...done.
Loaded symbols for /usr/pkg/lib/libsvn_ra_dav-1.so.0
Reading symbols from /usr/pkg/lib/libneon.so.24...done.
Loaded symbols for /usr/pkg/lib/libneon.so.24
Reading symbols from /usr/lib/libssl.so.3...done.
Loaded symbols for /usr/lib/libssl.so.3
Reading symbols from /usr/lib/libcrypto.so.2...done.
Loaded symbols for /usr/lib/libcrypto.so.2
Reading symbols from /usr/lib/libz.so.0...done.
Loaded symbols for /usr/lib/libz.so.0
#0  0x48164fab in kill () from /usr/lib/libc.so.12
(gdb) bt
#0  0x48164fab in kill () from /usr/lib/libc.so.12
#1  0x4816706f in __libc_mutex_unlock () from /usr/lib/libc.so.12
#2  0x481d9067 in malloc () from /usr/lib/libc.so.12
#3  0x0809840d in Perl_safesysmalloc ()
#4  0x080ade05 in Perl_sv_grow ()
#5  0x080b0c5e in Perl_sv_setsv_flags ()
#6  0x080c2f8b in Perl_pp_push ()
#7  0x080a59f4 in Perl_runops_standard ()
#8  0x08060886 in Perl_call_sv ()
#9  0x080606dc in Perl_call_sv ()
#10 0x080635ca in Perl_call_list ()
#11 0x08063403 in Perl_call_list ()
#12 0x08085f1b in Perl_newATTRSUB ()
#13 0x080833b9 in Perl_utilize ()
#14 0x0807d485 in Perl_yyparse ()
#15 0x080ccd47 in Perl_find_runcv ()
#16 0x080cdaff in Perl_pp_require ()
#17 0x080a59f4 in Perl_runops_standard ()
#18 0x0805ff9f in perl_run ()
#19 0x0805fe07 in perl_run ()
#20 0x0805d352 in main ()
#21 0x0805d052 in ___start ()
(gdb) 

I guess that it might be related to the fact that I see
/usr/lib/libpthread.so.0 above, but perl is not linked against libpthread,
so libpthread had to be linked with some module:

pavel@pc:/mnt/obj/pkgsrc/devel/p5-SVN-Mirror$ ldd /usr/pkg/bin/perl 
/usr/pkg/bin/perl:
         -lm.0 => /usr/lib/libm387.so.0
         -lm.0 => /usr/lib/libm.so.0
         -lcrypt.0 => /usr/lib/libcrypt.so.0
         -lc.12 => /usr/lib/libc.so.12

Please, how to solve this?

I use perl-5.8.4 .

Bye	Pavel