public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Mick <michaelkintzios@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] "Multiple package instances ....".  Help me understand this emerge error, please.
Date: Sat, 22 Feb 2014 23:32:42 +0000	[thread overview]
Message-ID: <201402222332.44431.michaelkintzios@gmail.com> (raw)
In-Reply-To: <53091F57.1020106@gmail.com>

[-- Attachment #1: Type: Text/Plain, Size: 4974 bytes --]

On Saturday 22 Feb 2014 22:06:15 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
> 
> 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.
> 
> 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
> 
> 
> 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.
> 
> 
> 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)
> - are you sure that's an emerge failure and not just a convoluted info
> message? Perhaps post the entire emerge output.

I can't recall how I got out of this, but by instinct I would probably unmerge 
libpng, emerge world and then @preserved-rebuild and revdep-rebuild.
-- 
Regards,
Mick

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

  reply	other threads:[~2014-02-22 23:33 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-22 21:15 [gentoo-user] "Multiple package instances ....". Help me understand this emerge error, please Alan Mackenzie
2014-02-22 22:06 ` Alan McKinnon
2014-02-22 23:32   ` Mick [this message]
2014-02-23 12:15     ` Alan Mackenzie
2014-02-23 17:25     ` Tanstaafl
2014-02-23 17:42       ` Mick
2014-02-23 17:50         ` Tanstaafl
2014-02-23 12:13   ` Alan Mackenzie
2014-02-23 15:22     ` Alan McKinnon
2014-02-23 16:13       ` Alan Mackenzie
2014-02-23 16:59         ` Alan McKinnon
2014-02-23 22:59           ` Neil Bothwick
2014-02-23 18:45     ` Kerem Gülver
2014-02-23 21:48     ` [gentoo-user] " Jonathan Callen
2014-02-23  0:32 ` [gentoo-user] " wabenbau
2014-02-23 11:54   ` Alan Mackenzie
2014-03-21 13:53     ` Tom Wijsman
2014-03-21 13:50 ` Tom Wijsman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201402222332.44431.michaelkintzios@gmail.com \
    --to=michaelkintzios@gmail.com \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox