[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dpkg fails to install certain packages



Yes, that works for me also.  A new Eterm window installs the packages
just fine.

Jake Griesbach



On Mon, 1 Feb 1999, Jules Bean wrote:

> On Mon, 1 Feb 1999, Jake Griesbach wrote:
> 
> > Dpkg fails to install certain packages, due to gzip -dc returning an
> > error.  This seems prominent in more than a few current packages.
> 
> [...]
> 
> > gzip: stdout: Broken pipe
> > dpkg-deb: subprocess gzip -dc returned error exit status 1
> > dpkg: error processing debian/dists/unstable/main/binary-i386/devel/libgnome0_0.30.1-5.deb (--install):
> >  subprocess dpkg-deb --fsys-tarfile returned error exit status 2
> > Errors were encountered while processing:
> >  debian/dists/unstable/main/binary-i386/devel/libgnome0_0.30.1-5.deb
> > DPKG ERROR
> 
> I'm replying directly since I the bug number hasn't come through yet.
> I'll forward my own message, or a reply to it, to the bug when it gets
> there.
> 
> I am also seeing this error.  And I'm seeing similar errors with
> dpkg-source -x and dpkg-source -b
> 
> I tracked it down as follows:
> 
> It's something to do with this sub in dpkg-source:
> 
> sub reapgzip {
> #print STDERR "reapgzip $_[0]\n";
>     $cgz == waitpid($cgz,0) || &syserr("wait for gzip");
>     !$? || ($gzipsigpipeok && WIFSIGNALED($?) && WTERMSIG($?)==SIGPIPE) ||
>         subprocerr("gzip");
>     close(GZIPFILE);
> }
> 
> $gzipsigpipeok is true; WIFSIGNALED($?) is not true. WTERMSIG I didn't
> check (sorry!).
> 
> So something funny seems to be happening with the disposition of the
> SIGPIPE.
> 
> I am guessing that the error in dpkg itself is broadly the same.
> 
> > 
> > dpkg version is 1.4.1
> > dpkg-ftp version is 1.6.1
> > gzip version is 1.2.4-29
> > 
> > kernel version: 2.2.1
> > libc-2.0.7.so
> > perl version: 5.004.04-6
> 
> I'm using kernel 2.0.33, so it's not that.
> I'm not using dpkg-ftp at all, so it's not that.
> 
> If it's a signalling problem, then I'm guessing it's a libc problem?  But
> I don't really understand what's going on at all.
> 
> An example as I see it in dpkg-source:
> 
> jules@pear% dpkg-source -b marble3d-0.0.1 marble3d_0.0.1.orig.tar.gz
> 5:50PM
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> dpkg-source: building marble3d using existing marble3d_0.0.1.orig.tar.gz
> 
> gunzip: stdout: Broken pipe
> dpkg-source: failure: gzip gave error exit status 1
> 
> There's nothing wrong with the package - if I dpkg-source from an unpacked
> orig source, it builds fine.
> 
> It's only the gzipped source it has trouble with..
> 
> However, the worst thing is, it's not reproducible.
> 
> Immediately after I generated the error above, I opened a fresh terminal
> window, and ran exactly the same command, from exactly the same directory,
> and it works as expected:
> 
> jules@pear% dpkg-source -b marble3d-0.0.1 marble3d_0.0.1.orig.tar.gz
> 5:53PM
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> dpkg-source: building marble3d using existing marble3d_0.0.1.orig.tar.gz
> dpkg-source: building marble3d in marble3d_0.0.1-1.diff.gz
> dpkg-source: building marble3d in marble3d_0.0.1-1.dsc
> 
> 
> So, look at this:  This is in two different Eterms:
> 
> Number 1:
> -------------
> jules@pear% pwd
> 5:57PM
> /home/jules/debian/packaging
> jules@pear% env
> 5:57PM
> HOSTNAME=pear
> USER=jules
> MACHTYPE=i686
> DISPLAY=:1.0
> LOGNAME=jules
> SHLVL=2
> SHELL=/usr/bin/zsh
> HOSTTYPE=i486
> OSTYPE=linux
> HOME=/home/jules
> TERM=xterm
> PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
> _=/usr/bin/env
> SESSION_MANAGER=local/pear:/tmp/.ICE-unix/1620,tcp/pear:2109
> ETERM_THEME_ROOT=/home/jules/.Eterm/themes/Eterm
> COLORFGBG=15;default;0
> WINDOWID=50331650
> COLORTERM=Eterm-pixmap
> PWD=/home/jules/debian/packaging
> jules@pear% dpkg-source -b marble3d-0.0.1 marble3d_0.0.1.orig.tar.gz
> 5:57PM
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> dpkg-source: building marble3d using existing marble3d_0.0.1.orig.tar.gz
> 
> gunzip: stdout: Broken pipe
> dpkg-source: failure: gzip gave error exit status 1
> -------------
> 
> Number 2:
> -------------
> jules@pear% pwd
> 5:57PM
> /home/jules/debian/packaging
> jules@pear% env
> 5:58PM
> HOSTNAME=pear
> USER=jules
> MACHTYPE=i686
> DISPLAY=:1.0
> LOGNAME=jules
> SHLVL=3
> SHELL=/usr/bin/zsh
> HOSTTYPE=i486
> OSTYPE=linux
> HOME=/home/jules
> TERM=xterm
> PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
> _=/usr/bin/env
> SESSION_MANAGER=local/pear:/tmp/.ICE-unix/1620,tcp/pear:2109
> EVERSION=0.15.0
> EROOT=/usr/share/enlightenment
> EPID=1652
> ETHEME=
> PWD=/home/jules
> ETERM_THEME_ROOT=/home/jules/.Eterm/themes/Eterm
> COLORFGBG=15;default;0
> WINDOWID=83886082
> COLORTERM=Eterm-pixmap
> jules@pear% dpkg-source -b marble3d-0.0.1 marble3d_0.0.1.orig.tar.gz
> 5:58PM
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> no utmp entry available, using value of LOGNAME ("jules") at
> /usr/lib/dpkg/controllib.pl line 40.
> dpkg-source: building marble3d using existing marble3d_0.0.1.orig.tar.gz
> dpkg-source: building marble3d in marble3d_0.0.1-1.diff.gz
> dpkg-source: building marble3d in marble3d_0.0.1-1.dsc
> ------------
> 
> The only difference between these two Eterms is that one has been around
> longer - it's been up since before my windowmanager has, and has init as
> its parent.  That is the first one, the one which breaks.  The second
> Eterm, which was launched by my window-manager, is fine.
> 
> There is something very odd going on here.
> 
> Inserting another level of subshell, by using
> 
> zsh -c 'dpkg-source...'
> 
> makes no difference to either Eterm.  Neither does using bash -c.
> 
> There are also some signal handling oddities around - on occasion, I
> haven't been able to suspend things.  I can't reproduce that just now.
> 
> It all points to libc weirdness for me..
> 
> Jules
>  
> /----------------+-------------------------------+---------------------\
> |  Jelibean aka  | jules@jellybean.co.uk         |  6 Evelyn Rd	       |
> |  Jules aka     | jules@debian.org              |  Richmond, Surrey   |
> |  Julian Bean   | jmlb2@hermes.cam.ac.uk        |  TW9 2TF *UK*       |
> +----------------+-------------------------------+---------------------+
> |  War doesn't demonstrate who's right... just who's left.             |
> |  When privacy is outlawed... only the outlaws have privacy.          |
> \----------------------------------------------------------------------/
> 
> 
> 


Reply to: