Gentoo Archives: gentoo-user

From: Alex Schuster <wonko@×××××××××.org>
To: gentoo-user@l.g.o
Subject: [gentoo-user] emerge --depclean does not remove due to link level dependencies
Date: Wed, 04 Nov 2009 10:32:55
Message-Id: 200911041132.47105.wonko@wonkology.org
1 Hi there!
2
3 Again, this is just something I am curious about, not a real problem.
4 emerge -p --depclean gives me this output:
5
6 [...]
7 Calculating dependencies... done!
8 >>> Checking for lib consumers...
9 >>> Assigning files to packages...
10 * In order to avoid breakage of link level dependencies, one or more
11 * packages will not be removed. This can be solved by rebuilding the
12 * packages that pulled them in.
13 *
14 * dev-libs/elfutils-0.131-r2 pulled in by:
15 * dev-util/ddd-3.3.12-r1 needs libelf.so.1
16 [...]
17 And some more of that involving media-libs/libcddb-1.3.2, media-
18 sound/esound-0.2.41, sys-libs/db-4.5.20_p2-r1 and sys-libs/db-4.6.21_p4.
19
20 Okay, ddd needs libelf.so.1, provided by elfutils. Still the same when I
21 rebuild ddd. So, why does this output appear at all? ddd needs
22 libelf.so.1, this is in elfutils, so of course elfutils is needed just
23 like any other package.
24
25 Oh, wait.... I think I got it. emerge -pe ddd dos NOT list elfutils. So is
26 this a bug in the ddd ebuild, not having elfutils as a dependency? And the
27 same would be true for the other packages? Should I file some bugs?
28
29 Hmmmm. Now I got it. ddd does indeed not need elfutils. But it uses it
30 when it is available. After removing elfutils, ddd still builds. Starting
31 the ddd configure script in by hand with the --help option does not show
32 options like --without-elf, so it's not the ebuild's fault that ddd makes
33 use of the libelf library when it is available.
34
35 Still, this is ugly I think. Another part of the emerge --depclean output
36 is:
37 * media-sound/esound-0.2.41 pulled in by:
38 * app-office/gnucash-2.2.9-r1 needs libesd.so.0
39 * gnome-extra/gnome-media-2.26.0-r1 needs libesd.so.0
40 * gnome-extra/nautilus-cd-burner-2.24.0 needs libesd.so.0
41 * gnome-extra/yelp-2.26.0 needs libesd.so.0
42 * media-libs/smpeg-0.4.4-r9 needs libesd.so.0
43 * media-sound/amarok-1.4.10_p20090130-r3 needs libesd.so.0
44 * media-sound/rhythmbox-0.11.6-r1 needs libesd.so.0
45 * media-sound/synaesthesia-2.4 needs libesd.so.0
46 * media-video/transcode-1.0.7 needs libesd.so.0
47
48 I do not have esd in my USE flags. Looks like all those packages use it
49 anyway when it is available.
50
51 Should some bugs be filed? And if so, should they go:
52 - To the ebuild maintainers? But they probably cannot do much about it,
53 apart from patching the package's autoconf stuff.
54 - To upstream? Well, would they consider this this a bug at all, or a mere
55 problem with Gentoo's special build system, that wants to know all the
56 dependencies?
57 - To the doc team? Suggesting that the emerge --depclean output should
58 change from:
59 * In order to avoid breakage of link level dependencies, one or more
60 * packages will not be removed. This can be solved by rebuilding the
61 * packages that pulled them in.
62 to something like:
63 * In order to avoid breakage of link level dependencies, one or more
64 * packages will not be removed. If you like them to be removed, do so
65 * manually, and run revdep-rebuild afterwards to rebuild the packages
66 * without the libraries. We are sorry, this is an upstream problem with
67 * bad configure files and we cannot do much about it. Use quickpkg
68 * before removing the packages, so if anything breaks you can get them
69 * back quickly. Good luck.
70
71 Wonko

Replies