Apparently, though unproven, at 21:44 on Thursday 28 October 2010, Joseph did
opine thusly:
> On 10/28/10 06:58, Joseph wrote:
> >After upgrading to Perl 5.12 and all cleanup "perl-cleaner --all"
> >When I run "emerge --depclean" it asked me to removed the following
> >packages listed below. However, when I check all of them are needed by
> >some other packages. Do I need them? (I retained them all)
> >
> >virtual/perl-Package-Constants
> >virtual/perl-Compress-Raw-Zlib
> >virtual/perl-Compress-Raw-Bzip2
> >dev-java/antlr
> >perl-core/MIME-Base64
> >perl-core/Test-Simple
> >perl-core/Archive-Tar
> >perl-core/Test-Harness
> >perl-core/IO-Compress
> >perl-core/IO-Zlib
> >perl-core/Digest-MD5
> >perl-core/CGI
> >perl-core/Digest-SHA
> >perl-core/Compress-Raw-Bzip2
> >perl-core/Sys-Syslog
> >perl-core/digest-base
> >perl-core/Compress-Raw-Zlib
> >perl-core/version
> >perl-core/DB_File
> >perl-core/Package-Constants
> >dev-java/gjdoc
> >perl-core/libnet
> >
> >The reason I'm asking is that I'm getting some strange errors when using
> >'sql-ledger' eg. Using a hash as a reference is deprecated at SL/IS.pm
> >line 582.
> >
> >I think it might be related to recent perl upgrade.
> >Is it possible / safe to downgrade to previous "perl-5.8.8-r8" ?
> >or do I just delete the above perl module.
> >
> >--
> >Joseph
>
> I'm trying to downgrade perl on one of my machine to 5.8 and got stuck with
> a block: [blocks B ] <sys-devel/libperl-5.10.1
> ("<sys-devel/libperl-5.10.1" is blocking dev-lang/perl-5.12.2-r1)
No that won't work. Read the output and understand what it is telling you:
Something with a version smaller than libperl-5.10.1 will be downgraded but
that will conflict with perl-5.12.2-r1 which *will still be installed at the
time libperl is downgraded*.
This only makes sense as you can only merge one thing at a time and they block
each other. Either way it is done, you will get a block like this.
The solution is to remove the packages and remerge them correctly (which
nicely sidesteps the entire problem). Or you could use portage-2.2 which has
support for much the same thing. Obviously you don't have that portage though.
As perl is not required to run emerge, you can safely do this:
emerge -C libperl perl
emerge <stuff you do want>
>
> I've tried to mask:
> >=dev-lang/perl-5.12.2-r1
> >=sys-devel/libperl-5.10.1
>
> but it doesn't help so I run:
> emerge -1 --nodeps =libperl-5.8.8* && emerge --nodeps =perl-5.8.8*
>
> this compiled OK but running "perl-cleaner --all"
> it tries to recomile imagemagic and it fails:
> emerge -vD1 net-print/foomatic-db-engine:0 dev-db/postgresql-server:8.4
> app-office/gnumeric:0 x11-terms/rxvt-unicode:0
>
> libtool: install: warning: remember to run `libtool --finish
> /usr/lib/ImageMagick-6.6.2/modules-Q16/coders' make[2]: Leaving directory
> `/var/tmp/portage/media-gfx/imagemagick-6.6.2.5/work/ImageMagick-6.6.2-5'
> make[1]: *** [install-am] Error 2
> make[1]: Leaving directory
> `/var/tmp/portage/media-gfx/imagemagick-6.6.2.5/work/ImageMagick-6.6.2-5'
> make: *** [install] Error 2
> * ERROR: media-gfx/imagemagick-6.6.2.5 failed:
> * (no error message)
> *
> * Call stack:
> * ebuild.sh, line 54: Called src_install
> * environment, line 2661: Called die
> * The specific snippet of code:
> * emake DESTDIR="${D}" install || die;
> *
> * If you need support, post the output of 'emerge --info
> =media-gfx/imagemagick-6.6.2.5', * the complete build log and the output
> of 'emerge -pqv =media-gfx/imagemagick-6.6.2.5'. * The complete build log
> is located at
> '/var/log/portage/media-gfx:imagemagick-6.6.2.5:20101028-182120.log'. *
> The ebuild environment file is located at
> '/var/tmp/portage/media-gfx/imagemagick-6.6.2.5/temp/environment'. * S:
> '/var/tmp/portage/media-gfx/imagemagick-6.6.2.5/work/ImageMagick-6.6.2-5'
>
> Any help will be appreciated what to do with it.
--
alan dot mckinnon at gmail dot com