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

Bug#441975: cannot upgrade libc6-2.6.1-3 if libc6-i686 is installed



Le Thursday 13 September 2007 18:18:54 Aurelien Jarno, vous avez écrit :
> Gallien Matthieu a écrit :
> > Setting up libc6 (2.6.1-3) ...
> > + set -e
> > + export LC_ALL=C
> > + LC_ALL=C
> > + type=configure
> > + preversion=2.6.1-1+b1
> > + '[' configure = configure ']'
> > + '[' -f /usr/share/debconf/confmodule ']'
> > + . /usr/share/debconf/confmodule
> > ++ '[' '!' '' ']'
> > ++ PERL_DL_NONLAZY=1
> > ++ export PERL_DL_NONLAZY
> > ++ '[' '' ']'
> > ++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/libc6.postinst
> > configure 2.6.1-1+b1
> > dpkg: error processing libc6 (--configure):
> >  subprocess post-installation script killed by signal (Segmentation
> > fault)
>
> Wow it's very strange that /usr/share/debconf/frontend segfault in such
> conditions. It is a perl program.
>
> While a version gap between libc6 and libc6-i686 could really cause such
> causes of problem, the difference is very small in your case, and I
> don't really see how it could cause such a problem.
>
> Does a /etc/ld.so.nohwcap file exists when the versions of libc6 and
> libc6-i686 mismatch (after a failure in the postinst script)?

Yes there is an empty one

>
> That let me ask you a few questions:
> - What's the output of ldd /usr/bin/perl in that case? and when the
> packages are correctly installed?

wahiba:~# ldd /usr/bin/perl
        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7f1b000)
        libm.so.6 => /lib/libm.so.6 (0xb7ef5000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7edd000)
        libc.so.6 => /lib/libc.so.6 (0xb7d95000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7d67000)
        /lib/ld-linux.so.2 (0xb7f3b000)

and when the packages are correclty installed by this command:

wahiba:~# apt-get remove -f --purge libc6-i686
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  libc6-i686*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
2 not fully installed or removed.
Need to get 0B of archives.
After unpacking 2638kB disk space will be freed.
Do you want to continue [Y/n]?
(Reading database ... 354137 files and directories currently installed.)
Removing libc6-i686 ...
Purging configuration files for libc6-i686 ...
Setting up libc6 (2.6.1-3) ...
frontend: cannot connect to X server
debconf: unable to initialize frontend: Kde
debconf: (DISPLAY problem?)
debconf: falling back to frontend: Dialog
Setting up libc6-dev (2.6.1-3) ...

wahiba:~# ldd /usr/bin/perl
        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7ef1000)
        libm.so.6 => /lib/libm.so.6 (0xb7ecb000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7eb4000)
        libc.so.6 => /lib/libc.so.6 (0xb7d6c000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7d3e000)
        /lib/ld-linux.so.2 (0xb7f12000)

and there is no /etc/ld.so.nohwcap

then apt-get install linc6-i686

wahiba:~# ldd /usr/bin/perl
        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7f59000)
        libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7f34000)
        libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7f1d000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7dd5000)
        libcrypt.so.1 => /lib/i686/cmov/libcrypt.so.1 (0xb7da7000)
        /lib/ld-linux.so.2 (0xb7f7a000)

> - Are you sure there is a correlation between the segfault and the
> presence of libc6-i686?

No it seems that there is other path to reproduce the error.
At least :

if libc6 and libc6-i686 are correctly installed from unstable.
Then I remove libc6-i686. I downgrade to libc6/testing.
And I try again to upgrade. There is now a faillure.
If I do:
dpkg --ignore-depends=libc6 -i /var/cache/apt/archives/libc6-i686_2.6.1-3_i386.deb

Then I can correclty configured libc6.

when the upgrade of libc6 fails

wahiba:~# ldd /usr/bin/perl
        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7fb1000)
        libm.so.6 => /lib/libm.so.6 (0xb7f8b000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7f73000)
        libc.so.6 => /lib/libc.so.6 (0xb7e2b000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7dfd000)
        /lib/ld-linux.so.2 (0xb7fd1000)

after the manual forced installation of libc6-i686:

wahiba:~# ldd /usr/bin/perl
        linux-gate.so.1 =>  (0xffffe000)
        libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7f5c000)
        libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7f37000)
        libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7f20000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7dd8000)
        libcrypt.so.1 => /lib/i686/cmov/libcrypt.so.1 (0xb7daa000)
        /lib/ld-linux.so.2 (0xb7f7d000)

Hope this help

-- 
Gallien Matthieu




Reply to: