From: Alan McKinnon <alan.mckinnon@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] --depclean and python needed by scribus.
Date: Wed, 9 Sep 2009 14:30:14 +0200 [thread overview]
Message-ID: <200909091430.14574.alan.mckinnon@gmail.com> (raw)
In-Reply-To: <4AA794D1.10104@gmail.com>
On Wednesday 09 September 2009 13:43:13 Dale wrote:
> Hi folks,
>
> Can someone tell me what this means?
>
> root@smoker / # emerge -p --depclean
>
> * Always study the list of packages to be cleaned for any obvious
> * mistakes. Packages that are part of the world set will always
> * be kept. They can be manually added to this set with
> * `emerge --noreplace <atom>`. Packages that are listed in
> * package.provided (see portage(5)) will be removed by
> * depclean, even if they are part of the world set.
> *
> * As a safety measure, depclean will not remove any packages
> * unless *all* required dependencies have been resolved. As a
> * consequence, it is often necessary to run `emerge --update
> * --newuse --deep @system @world` prior to depclean.
>
> Calculating dependencies... done!
>
> >>> Checking for lib consumers...
> >>> Assigning files to packages...
>
> * In order to avoid breakage of link level dependencies, one or more
> * packages will not be removed. This can be solved by rebuilding the
> * packages that pulled them in.
> *
> * dev-lang/python-2.5.4-r3 pulled in by:
> * app-office/scribus-1.3.3.11
> *
>
> >>> Adding lib providers to graph...
>
> \
> Calculating dependencies... done!
>
>
> I have re-compiled scribus about three times now. I have also ran
> python-updater a few times and it just keeps rebuilding scribus and
> boost in a endless loop. What am I missing here?
This is horrible to solve. I'll tell you what I've discovered when it happens
to me. But first, the error message is generic and a best guess - "rebuilding
the packages that pulled them in" might work, but also might not.
The superficial problem is broken ebuilds caused by the real problem - broken
build scripts that configure themselves in funky ways at build time. Real
example, I have this on my machine:
* dev-db/edb-9999 pulled in by:
* media-libs/imlib2_loaders-9999
and
nazgul mysql # eix imlib2_loaders
[I] media-libs/imlib2_loaders [1]
Installed versions: 9999(18:33:40 09/06/09)(-doc -edb -nls)
and
# ldd /usr/lib64/imlib2/loaders/*.so | grep edb
libedb.so.1 => /usr/lib/libedb.so.1 (0x00007f33bf139000)
So, edb is nowhere in the dependency graph for imlib2_loaders (USE=-edb).
Portage *knows* it should not depend on edb at all.
But, when imlib2_loaders builds, ./configure finds edb on the system (I have
it, I just don't want support for it in imlib2_loaders). The ./configure is
broken - there is no "--enable edb" in it.
Now this always just happened to work just fine for all of us. Recent portage
know records link level deps when it builds stuff (see ldd above) so now
concludes (correctly) that imlib2_loaders does not depend on edb per portage,
but does per the actual system.
It is now clear that I now have two and only two options:
- Unmerge edb. This might not be desirable and I should not be forced to do
this.
- Build imlib2_loaders with edb support. This also might not be desirable.
Actually there's a third option: fix the e17 team's broken build scripts.
In your case, I think you need to rebuild scribus with "USE=python"
Note that portage can't really help you diagnose these issues, it can only
point them out. It has no idea that the inconsistency is due to that USE flag
(it can't read human-speak).
You also can't DEPEND on scribus[python] as
1. The dep is the wrong way round
2. It's actually force USE=python for scribus if, and only if, python is
actually already present on the system. This is also the wrong way round and
portage should not be expected to implement funky run-time detection
workarounds for broken ./configure scripts.
I did tell you at the beginning that it was complex, right?
--
alan dot mckinnon at gmail dot com
next prev parent reply other threads:[~2009-09-09 12:31 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-09 11:43 [gentoo-user] --depclean and python needed by scribus Dale
2009-09-09 12:30 ` Alan McKinnon [this message]
2009-09-09 12:34 ` Mark Knecht
2009-09-09 12:45 ` Dale
2009-09-09 12:49 ` Alan McKinnon
2009-09-09 12:52 ` Mark Knecht
2009-09-09 13:25 ` Dale
2009-09-09 14:02 ` Dale
2009-09-09 15:35 ` Mark Knecht
2009-09-09 15:40 ` Paul Hartman
2009-09-09 15:48 ` Mark Knecht
2009-09-09 15:56 ` Paul Hartman
2009-09-09 17:37 ` Mark Knecht
2009-09-09 18:07 ` Dale
2009-09-09 16:04 ` Neil Bothwick
2009-09-09 16:29 ` Paul Hartman
2009-09-09 18:47 ` Neil Bothwick
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=200909091430.14574.alan.mckinnon@gmail.com \
--to=alan.mckinnon@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