Hi, Alan. On Sun, Feb 23, 2014 at 12:06:15AM +0200, Alan McKinnon wrote: > On 22/02/2014 23:15, Alan Mackenzie wrote: > > Hi, Gentoo.
> > I've just tried an emerge -puND world, after a shockingly long interval. > > I got the error message: > > !!! Multiple package instances within a single package slot have been > > pulled > > !!! into the dependency graph, resulting in a slot conflict: > > , etc. > > To simplify the problem, I tried to emerge an individual package > > identified in that message, and tried emerge -p libpng. I got the same > > message, with this: > > ############################################################################### > > !!! Multiple package instances within a single package slot have been pulled > > !!! into the dependency graph, resulting in a slot conflict: > > media-libs/libpng:0 > > (media-libs/libpng-1.5.17-r1::gentoo, installed) pulled in by > > media-libs/libpng:0/0= required by (x11-libs/cairo-1.12.14-r4::gentoo, > > installed) > > >=media-libs/libpng-1.4:0/0= required by > > (app-editors/emacs-24.3-r2::gentoo, installed) > > media-libs/libpng:0/0= required by (media-libs/libwebp-0.3.1::gentoo, > > installed) > > media-libs/libpng:0/0= required by > > (net-print/cups-filters-1.0.36-r1::gentoo, installed) > > media-libs/libpng:0/0= required by (kde-base/kdelibs-4.11.2-r1::gentoo, > > installed) > > media-libs/libpng:0/0= required by (dev-qt/qtgui-4.8.5-r1::gentoo, > > installed) > > media-libs/libpng:0/0= required by (app-text/poppler-0.24.3::gentoo, > > installed) > > (and 3 more with the same problems) > > (media-libs/libpng-1.6.8::gentoo, ebuild scheduled for merge) pulled in by > > (no parents that aren't satisfied by other packages in this slot) > > ############################################################################### > > Clearly, I'm trying to update libpng-1.5.17 to libpng-1.6.8. What does > > this portion of the message mean: > > media-libs/libpng:0/0= > > ^^^^^ > > ? Is it somehow telling me that cairo and friends require the currently > > installed version, whatever that is? Where is this format documented? I > > couldn't find anything about it in the Gentoo handbook, and not in the > > emerge man page either. > > What do I have to do to get this thing emerged? > > Thanks! > You've hit the dreaded sub-slot (a new portage feature). It causes no > end of trouble as so few people know how it really works, but it's > intended to replace @preserved-rebuild by DoingItRite and finally make > revdep-rebuild obsolete. > It's documented in man 5 ebuild under these headings: > Atom Slots > Sub Slots > Atom Slot Operators > SLOT Thanks! I know what :0/0= means, now. > libpng:0/0 is libpng SLOT 0 which has been around since EAPI1 and > SUBSLOT 0 which is new. > Take cairo which is one of your deps. In the ebuild: > RDEPEND=" > media-libs/libpng:0= > " > eix libpng shows: > (0) 1.5.15 1.5.17-r1 (~)1.6.6(0/16) (~)1.6.7(0/16) 1.6.8(0/16) > (~)1.6.9(0/16) > That shows libpng-1.5.* have slot/subslot 0/0 and > libpng-1.6.* have slot/subslot 0/16 > where presumably "16" is shorthand for "1.6" in the version > Now read those headings in the man page, you will find this gem: > "= Indicates that any slot value is acceptable. In addition, for > runtime dependencies, indicates that the package will break unless a > matching package with slot and sub-slot equal to the slot and > sub-slot of the best installed version at the time the package was > installed is available. > Examples: > dev-libs/icu:= > dev-lang/perl:= > dev-libs/glib:= > " > in other words, even though libpng-1.5.17-r1 and libpng-1.6.8 are in the > same SLOT, nevertheless cairo will break if you upgrade libpng that way. OK. > Or expressed another way in language from before sub-slots, cairo will > stop working properly after the emerge world until you run > revdep-rebuild and fix and the borkage I wouldn't have a problem with that. Trouble is, emerge won't merge libpng because of this "conflict". > The world update wants to upgrade libpng as a new stable version is > available but portage won't do it as it will break packages that use libpng. Yes. > All my hosts here are up to date so I can't reproduce your problem: > - is portage up to date runnign latest version in your tree? Update that > first (always a good idea anyway) Yes: I've got portage-2.2.7, having synched my portage yesterday and checked with emerge -s. > - are you sure that's an emerge failure and not just a convoluted info > message? Perhaps post the entire emerge output. I tried it again without the -p, and got the same output. I think this is a portage bug. At the very least, it's poor documentation. I've reported the situation to bugs.gentoo.org, bug #502236. Thanks for the help. > -- > Alan McKinnon > alan.mckin...@gmail.com -- Alan Mackenzie (Nuremberg, Germany).