Date: Wed, 2 Jan 2002 15:14:26 +0700 From: Eugene Grosbein <eugen@grosbein.pp.ru> To: jkh@winston.freebsd.org Cc: stable@freebsd.org Subject: pkg_create(1) segfaults while make package-noinstall Message-ID: <20020102151426.A221@grosbein.pp.ru>
next in thread | raw e-mail | index | archive | help
Hi!
My system is 4.5-PRERELEASE (1 Jan 2002).
I'm trying to make package from installed port mutt-1.2.5i (it's fresh).
I have no distfile, this machine is offline.
It's impossible for me now. There is output of 'make -d l package-noinstall':
Script started on Wed Jan 2 14:56:04 2002
/bin/mkdir -p /usr/ports/mail/mutt/work
cd /usr/ports/mail/mutt && make 'CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz' PACKAGE_NOINSTALL=yes real-package
cd /usr/ports/mail/mutt && make 'CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz' pre-package
true
if [ -f /usr/ports/mail/mutt/scripts/pre-package ]; then cd /usr/ports/mail/mutt && /usr/bin/env PORTOBJFORMAT=elf BSD_INSTALL_PROGRAM="install -c -s -o root -g wheel -m 555" BSD_INSTALL_SCRIPT="install -c -o root -g wheel -m 555" BSD_INSTALL_DATA="install -c -o root -g wheel -m 444" BSD_INSTALL_MAN="install -c -o root -g wheel -m 444" CURDIR=/usr/ports/mail/mutt DISTDIR=/usr/ports/distfiles WRKDIR=/usr/ports/mail/mutt/work WRKSRC=/usr/ports/mail/mutt/work/mutt-1.2.5 PATCHDIR=/usr/ports/mail/mutt/files SCRIPTDIR=/usr/ports/mail/mutt/scripts FILESDIR=/usr/ports/mail/mutt/files PORTSDIR=/usr/ports DEPENDS="" PREFIX=/usr/local LOCALBASE=/usr/local X11BASE=/usr/X11R6 /bin/sh /usr/ports/mail/mutt/scripts/pre-package; fi
cd /usr/ports/mail/mutt && make 'CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz' do-package
cd /usr/ports/mail/mutt && make 'CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz' generate-plist
echo "===> Generating temporary packing list"
===> Generating temporary packing list
/bin/mkdir -p `dirname /usr/ports/mail/mutt/work/.PLIST.mktmp`
if [ ! -f /usr/ports/mail/mutt/pkg-plist -o ! -f /usr/ports/mail/mutt/pkg-comment -o ! -f /usr/ports/mail/mutt/pkg-descr ]; then echo "** Missing package files for mutt-1.2.5."; exit 1; fi
>/usr/ports/mail/mutt/work/.PLIST.mktmp
for man in man/man1/mutt.1.gz man/man1/mutt_dotlock.1.gz man/man5/muttrc.5.gz; do echo ${man} >> /usr/ports/mail/mutt/work/.PLIST.mktmp; done
/usr/bin/sed -e s!%%OSREL%%!4.5!g -e s!%%PREFIX%%!%D!g -e s!%%LOCALBASE%%!/usr/local!g -e s!%%X11BASE%%!/usr/X11R6!g -e s!%%PORTDOCS%%!""!g -e s!%%PORTOBJFORMAT%%!elf!g -e s!%%XAWVER%%!7!g -e s!%%PERL_VERSION%%!5.00503!g -e s!%%PERL_VER%%!5.005!g -e s!%%PERL_ARCH%%!i386-freebsd!g /usr/ports/mail/mutt/pkg-plist >> /usr/ports/mail/mutt/work/.PLIST.mktmp
echo "@unexec if [ -f %D/info/dir ]; then if sed -e '1,/Menu:/d' %D/info/dir | grep -q '^[*] '; then true; else rm %D/info/dir; fi; fi" >> /usr/ports/mail/mutt/work/.PLIST.mktmp
/usr/bin/sed -e 's,\(/lib.*\.so\.[0-9]*\)\.[0-9]*$,\1,' /usr/ports/mail/mutt/work/.PLIST.mktmp > /usr/ports/mail/mutt/work/.PLIST.mktmp.tmp
/bin/mv -f /usr/ports/mail/mutt/work/.PLIST.mktmp.tmp /usr/ports/mail/mutt/work/.PLIST.mktmp
echo "===> Building package for mutt-1.2.5"
===> Building package for mutt-1.2.5
if [ -d /usr/ports/packages ]; then if [ ! -d /usr/ports/packages/All ]; then if ! /bin/mkdir -p /usr/ports/packages/All; then echo ">> Can't create directory /usr/ports/packages/All."; exit 1; fi; fi; fi
__softMAKEFLAGS=''\''CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz'\'''; if /usr/sbin/pkg_create -v -c /usr/ports/mail/mutt/pkg-comment -d /usr/ports/mail/mutt/pkg-descr -f /usr/ports/mail/mutt/work/.PLIST.mktmp -p /usr/local -P "`make package-depends | /usr/bin/grep -v -E 'this_port_does_not_exist' | sort -u`" -m /etc/mtree/BSD.local.dist -o mail/mutt /usr/ports/mail/mutt/mutt-1.2.5.tgz; then if [ -d /usr/ports/packages ]; then eval make ${__softMAKEFLAGS} package-links; fi; else eval make ${__softMAKEFLAGS} delete-package; exit 1; fi
cd: can't cd to "
Creating package /usr/ports/mail/mutt/mutt-1.2.5.tgz
Segmentation fault - core dumped
cd /usr/ports/mail/mutt && make 'CKSUMFILES+=mutt-1.2.5i.tar.gz charmaps-0.0.tar.gz patch-1.2.5.rr.compressed.1.gz' delete-package-links
for cat in mail; do /bin/rm -f /usr/ports/packages/$cat/mutt-1.2.5.tgz; done
/bin/rm -f /usr/ports/packages/Latest/mutt.tgz
/bin/rm -f /usr/ports/mail/mutt/mutt-1.2.5.tgz
*** Error code 1
Stop in /usr/ports/mail/mutt.
*** Error code 1
Stop in /usr/ports/mail/mutt.
*** Error code 1
Stop in /usr/ports/mail/mutt.
Script done on Wed Jan 2 14:56:05 2002
Hmm, those
cd: can't cd to "
and
Segmentation fault - core dumped
looks bad. Kernel says it's pkg_create segfaulting.
So I've rebuild it with debug info. I have CPUTYPE=i686 and no other
optimisations. This segfault is 100% repeatable.
Here is output of gdb:
Script started on Wed Jan 2 14:58:41 2002
GNU gdb 4.18
Copyright 1998 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-unknown-freebsd"...
Core was generated by `pkg_create'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libfetch.so.3...done.
Reading symbols from /usr/lib/libmd.so.2...done.
Reading symbols from /usr/lib/libc.so.4...done.
Reading symbols from /usr/libexec/ld-elf.so.1...done.
#0 0x280f32da in vfprintf () from /usr/lib/libc.so.4
(gdb) bt
#0 0x280f32da in vfprintf () from /usr/lib/libc.so.4
#1 0x280ed49b in snprintf () from /usr/lib/libc.so.4
#2 0x804b0ec in chkifdepends (pkgname1=0xbfbff52b "for",
pkgname2=0xab969fb <Address 0xab969fb out of bounds>)
at /usr/src/usr.sbin/pkg_install/lib/deps.c:91
#3 0x804b055 in sortdeps (pkgs=0xbfbff084)
at /usr/src/usr.sbin/pkg_install/lib/deps.c:51
#4 0x8049d12 in pkg_perform (pkgs=0xbfbff2f0)
at /usr/src/usr.sbin/pkg_install/create/perform.c:134
#5 0x8049a05 in main (argc=17, argv=0xbfbff2f0)
at /usr/src/usr.sbin/pkg_install/create/main.c:182
#6 0x80496c1 in _start ()
(gdb) quit
Script done on Wed Jan 2 14:58:52 2002
Eugene Grosbein
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020102151426.A221>
