[672141 views]

[]

[toggle ads]

Odi's astoundingly incomplete notes

New entries | Code

Gentoo updates perl from 5.22 to 5.24

On desktop systems emerge usually complains that there are packages requiring 5.22 and refuses to update:
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

dev-lang/perl:0

  (dev-lang/perl-5.24.1-r1:0/5.24::gentoo, ebuild scheduled for merge) pulled in by
    =dev-lang/perl-5.24* required by (virtual/perl-MIME-Base64-3.150.0-r2:0/0::gentoo, installed)
    ^              ^^^^^                                                                                                                                
    (and 8 more with the same problem)

  (dev-lang/perl-5.22.3_rc4:0/5.22::gentoo, installed) pulled in by
    dev-lang/perl:0/5.22=[-build(-)] required by (dev-perl/Digest-HMAC-1.30.0-r1:0/0::gentoo, installed)
                 ^^^^^^^^                                                                                                                                                                                                                                                         
    (and 13 more with the same problem)      
To resolve that:

Forcibly update perl (-O), then clean up:
# emerge -1uav perl-cleaner
# emerge -1uavO perl
# perl-cleaner --all
(repeat perl-cleaner if emerge fails)
There may still be perl virtuals that need reinstalling:
# emerge -1av $(qlist -IC 'virtual/perl-*')
This should leave you with a consistent perl build and emerge should no longer suggest a downgrade.

posted on 2017-04-18 09:43 CEST in Code | 3 comments | permalink
Great notes & Thank you!

Lucky for me I've just returned back to using Gentoo after an absence well over 5+ years. This error was popping up for me on a fresh install (arch=amd64, plasma profile). Highly annoying considering it was a fresh build.
Thank you for this howto.
You have saved me many hours of frustration with this issue, I'm glad to find this entry.
It has resolved the issue perfectly, many thanks again!
A much simpler and more reliable procedure than I found myself.
Thank you!