Re: Broken perl
On Fri, Oct 31, 2008 at 10:20:32AM +0100, Florian Kulzer wrote:
>
> I think your problem is similar to this one:
>
> http://lists.debian.org/debian-user/2008/08/msg01904.html
>
> You can try to follow the same procedure. I can walk you through it
> step-by-step if necessary; in that case, start by posting the output of
> the three commands that I mention in my first message in the August
> thread.
>
Well, thanks for the offer. The problem is indeed similar, so I tried
to follow the steps, and it kind of work. It seems the problem with
perl is gone now, but there are still things blocking aptitude from
doing much.
The solution for the perl problem involved:
dpkg -i /var/cache/apt/archives/perl-base_5.10.0-16_i386.deb
dpkg --configure perl perl-modules
dpkg -i /var/cache/apt/archives/liblocale-gettext-perl_1.05-4_i386.deb
dpkg -i /var/cache/apt/archives/libtext-iconv-perl_1.7-1+b1_i386.deb
dpkg -i /var/cache/apt/archives/libtext-charwidth-perl_0.04-5+b1_i386.de
Now aptitude install -f does not complain about perl.
Thanks for the help!
However, aptitude still complains about other things:
Removing ttf-liberation ...
W: /usr/share/fonts/truetype/ttf-liberation/LiberationSans-Bold.ttf:
not registered.
W:
/usr/share/fonts/truetype/ttf-liberation/LiberationSerif-Regular.ttf:
not registered.
W:
/usr/share/fonts/truetype/ttf-liberation/LiberationSerif-BoldItalic.ttf:
not registered.
[...]
dpkg: error processing ttf-liberation (--purge):
subprocess pre-removal script returned error exit status 1
Errors were encountered while processing:
ttf-liberation
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
Setting up mono-gac (1.9.1+dfsg-4) ...
* Installing 1 assembly from libgmime2.2-cil into Mono
* Installing 4 assemblies from libmono-addins0.2-cil into Mono
* Installing 2 assemblies from libmono-addins-gui0.2-cil into Mono
* Installing 1 assembly from libndesk-dbus1.0-cil into Mono
* Installing 1 assembly from libndesk-dbus-glib1.0-cil into Mono
! Assembly
/usr/share/cli-common/policies.d/libmono-addins-gui0.2-cil/policy.0.2.Mono.Addins.Gui.dll
does not exist
! Assembly
/usr/share/cli-common/policies.d/libmono-addins0.2-cil/policy.0.2.Mono.Addins.dll
does not exist
! Assembly
/usr/share/cli-common/policies.d/libmono-addins0.2-cil/policy.0.2.Mono.Addins.Setup.dll
does not exist
dpkg: error processing mono-gac (--configure):
subprocess post-installation script returned error exit status 3
dpkg: dependency problems prevent configuration of mono-runtime:
mono-runtime depends on mono-gac (= 1.9.1+dfsg-4); however:
Package mono-gac is not configured yet.
[...]
Errors were encountered while processing:
mono-gac
mono-runtime
libmono2.0-cil
libgconf2.0-cil
libmono-addins0.2-cil
libmono-system-web2.0-cil
libmono1.0-cil
libgnome2.0-cil
libmono-addins-gui0.2-cil
I think the 'mono' problems and the failure to purge ttf-liberation
package are different problems, but don't know for sure. There are
several other packages flagged for removal, but aptitude stops trying
after failing the first one.
Now, for the record, the detail of the solution for the perl problem:
This was the situation I started from:
$ dpkg -l perl\* | awk '/^i/{print $1,$2,$3}'
iU perl 5.10.0-16
ii perl-base 5.8.8-12
iU perl-modules 5.10.0-16
ii perl-tk 1:804.027-8
ii perlmagick 7:6.2.4.5.dfsg1-2
Pod/Usage.pm and File/Copy.pm, for instante, did not exist in the
5.8.8 tree, but they were in the 5.10.0 tree:
$ stat /usr/share/perl/5.10.0/File/Copy.pm
File: /usr/share/perl/5.10.0/File/Copy.pm'
Size: 16067 Blocks: 32 IO
Block: 4096 regular file
Device: 1642h/5698d Inode: 6439962 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2008-10-26 12:05:43.000000000 -0300
Modify: 2008-10-05 09:44:39.000000000 -0400
Change: 2008-10-26 12:06:01.000000000 -0300
# apt-get install perl-base=5.10.0-16
did not work, but
dpkg -i /var/cache/apt/archives/perl-base_5.10.0-16_i386.deb
did:
# dpkg -l perl\* | awk '/^i/{print $1,$2,$3}'
iU perl 5.10.0-16
ii perl-base 5.10.0-16
iU perl-modules 5.10.0-16
ii perl-tk 1:804.027-8
ii perlmagick 7:6.2.4.5.dfsg1-2
# dpkg --configure perl perl-modules
Setting up perl-modules (5.10.0-16) ...
Setting up perl (5.10.0-16) ...
# dpkg -l perl\* | awk '/^i/{print
$1,$2,$3}'
ii perl 5.10.0-16
ii perl-base 5.10.0-16
ii perl-modules 5.10.0-16
ii perl-tk 1:804.027-8
ii perlmagick 7:6.2.4.5.dfsg1-2
Then, aptitude install -f did things. It complained three times. First:
/usr/bin/perl: symbol lookup error:
/usr/lib/perl5/auto/Locale/gettext/gettext.so: undefined symbol:
Perl_Tstack_sp_ptr
So I installed manually:
dpkg -i /var/cache/apt/archives/liblocale-gettext-perl_1.05-4_i386.deb
And then aptitude install -f complained again:
/usr/bin/perl: symbol lookup error:
/usr/lib/perl5/auto/Text/Iconv/Iconv.so: undefined symbol:
Perl_Tstack_sp_ptr
So I installed manually again:
dpkg -i /var/cache/apt/archives/libtext-iconv-perl_1.7-1+b1_i386.deb
Finally, complained about
/usr/bin/perl: symbol lookup error:
/usr/lib/perl5/auto/Text/CharWidth/CharWidth.so: undefined symbol:
Perl_Tstack_sp_ptr
dpkg -i /var/cache/apt/archives/libtext-charwidth-perl_0.04-5+b1_i386.deb
and finally most unconfigured packages were could be configured with
aptitude install -f.
Regards,
Victor
Reply to:
- References:
- Broken perl
- From: Victor Munoz <vmunoz@macul.ciencias.uchile.cl>
- Re: Broken perl
- From: Florian Kulzer <florian.kulzer+debian@icfo.es>