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

interruption code 0x4003B in libperl.so.5.18.2[3fffcfff000+1d0000]



Bug number 753592 was merged into bug number 753444.  Bug number 753444
was then marked as fixed in perl-base version 5.18.2-6.  At the time of
this writing, this version is now in testing (jessie).  So one would
think it would be safe now to upgrade one's system, right?  Well, yes
and no.  It can be done, but not in the standard way.  If you use

   apt-get update
   apt-get upgrade

The upgrade will fail.  The problem is a trigger in perl-base for
man-db.  Configuring man-db requires hidden dependencies on other
packages which are not yet installed.  Here's how I managed to break
the deadlock.

First of all, I had previously put perl, perl-base, and perl-modules
on hold at the 5.18.2-4 level with

   echo perl hold | dpkg --set-selections
   echo perl-base hold | dpkg --set-selections
   echo perl-modules hold | dpkg --set-selections

So the first step was to remove the holds with

   echo perl install | dpkg --set-selections
   echo perl-base install | dpkg --set-selections
   echo perl-modules install | dpkg --set-selections

Of course, it should go without saying that you have to be root to do
all of this.  But I'll say it anyway for good measure.

Now change your current directory to a directory without any *.deb
files in it and proceed as follows:

   apt-get update
   apt-get download perl perl-base perl-modules libgdbm3 \
     liblocale-gettext-perl libtext-charwidth-perl libtext-iconv-perl
   dpkg -i perl-base_*.deb

Unpacking and configuring of perl-base will succeed, but the trigger
for configuring man-db will fail.  This leaves perl-base with a dpkg
status of "ii" and man-db with a dpkg status of "iF".  You can check
this with

   dpkg-query -l perl-base
   dpkg-query -l man-db

if you want.  Keep going as follows:

   dpkg -i perl-modules_*.deb
   dpkg -i libgdbm3_*.deb
   dpkg -i perl_*.deb
   dpkg -i liblocale-gettext-perl_*.deb
   dpkg -i libtext-charwidth-perl_*.deb
   dpkg -i libtext-iconv-perl_*.deb

Now you have the prerequisites installed to configure man-db

   dpkg --configure man-db

Now check the status of man-db again.

   dpkg-query -l man-db

Now it shows up with a status of "ii", which is what you want.
Now do some cleanup ...

   rm *.deb
   apt-get check

If "apt-get check" gives errors, then use "apt-get -f install"
to fix it.  Once this is done, proceed to upgrade the rest of
your database.

   apt-get upgrade
   apt-get clean
   apt-get --purge dist-upgrade
   apt-get clean
   apt-get --purge autoremove
   aptitude forget-new
   aptitude keep-all

I hope this helps someone.

-- 
  .''`.     Stephen Powell    
 : :'  :
 `. `'`
   `-


Reply to: