1 |
Daiajo Tibdixious <daiajo@×××××.com> posted |
2 |
a4a9bfcb0904130452i18424d18r6cfaf2a4fe63ed2b@××××××××××.com, excerpted |
3 |
below, on Mon, 13 Apr 2009 11:52:49 +0000: |
4 |
|
5 |
> Everytime I ran revdep-rebuild it brought up broken |
6 |
> /usr/kde/3.5/lib32/libqtmcop.so.1.0.0 (requires libqt-mt.so.3) |
7 |
> /usr/kde/3.5/lib32/libqtmcop.so.1.0.0 -> |
8 |
> app-emulation/emul-linux-x86-soundlibs |
9 |
> |
10 |
> rebuilt emul-linux-x86-soundlibs many times with no effect |
11 |
|
12 |
emul-linux-x86-* packages are binary -- they don't get compiled, only the |
13 |
pre-compiled files reinstalled, and reinstalling a pre-compiled binary no |
14 |
matter how many times you do it isn't going to change its linking. |
15 |
|
16 |
While you found an ultimately better solution below for this case, note |
17 |
that revdep-rebuild can be configured to ignore binary-only files and |
18 |
their packages, since rebuilding them won't help anyway. Since you found |
19 |
the better solution I'm not going to worry about finding the details |
20 |
myself (since I don't install proprietaryware, the reason for most |
21 |
binary-only packages, I've never had to deal with it directly) in ordered |
22 |
to post them, but the info's there for those who need it. |
23 |
|
24 |
> x11-libs/qt-3.3.8b-r1 (/usr/qt/3/lib64/libqt-mt.so.3 -> libqt-mt.so.3.3) |
25 |
> |
26 |
> I rebuilt qt3 without effect also. |
27 |
|
28 |
Correct, because what you rebuilt there was the 64-bit package and its |
29 |
binaries, which don't affect the 32-bit binary dependencies at all. |
30 |
|
31 |
> I had done a depclean, however doing equery depends on soundlibs, |
32 |
> medialibs, sdl showed they depended on each other, while nothing |
33 |
> depended on them. |
34 |
> I unmerged them & revdep-rebuild is now clean. |
35 |
|
36 |
> I'm just wondering why rebuilding the broken package didn't fix the |
37 |
> linkage? I also think depclean should have picked them up. |
38 |
|
39 |
I answered the revdep-rebuild question above. |
40 |
|
41 |
As for depclean, apparently one of the packages, likely sdl, was in your |
42 |
world file. Likely you had merged it at one point without the --oneshot |
43 |
option, which to portage means you want to keep the package and its |
44 |
dependencies around. (--oneshot tells it NOT to add it to the world |
45 |
file, you do NOT want to keep the package and its dependencies around.) |
46 |
|
47 |
One reason someone might have to emerge sdl and have it in their world |
48 |
file is if they've installed a package that depends on it directly -- not |
49 |
using portage (or other Gentoo PM). Since portage doesn't know about the |
50 |
other package (for sdl, this would typically be a game, possibly a |
51 |
proprietary one, also likely considering the 32-bit emul packages above), |
52 |
it doesn't know it needs to keep its dependencies (sdl in this case) |
53 |
around unless they are added to the world file themselves. |
54 |
|
55 |
As hinted above, the other reason it might have happened is accident. |
56 |
One scenario may be that sdl was a dependency of some package you had |
57 |
installed using portage and was merged as such. Then there was an sdl |
58 |
upgrade, but something didn't work correctly and the upgrade failed the |
59 |
first time. You may have then tried emerging sdl directly, but forgot |
60 |
the --oneshot option, so portage obligingly added it to the world file. |
61 |
|
62 |
FWIW, much of this is covered in the second and third parts of the Gentoo |
63 |
Handbook, Working with Gentoo and Working with Portage. Unfortunately, |
64 |
while Gentoo has a lot of very good documentation of which the handbook |
65 |
is only the beginning, many people read the first part of the handbook, |
66 |
Installing Gentoo, get it installed, and never read the rest. Sadly, |
67 |
such folks are missing out on a lot of very good information that will |
68 |
make their life administering a Gentoo system MUCH MUCH easier! |
69 |
|
70 |
http://www.gentoo.org/doc/en/handbook/handbook-amd64.xml |
71 |
|
72 |
It's also worth spending a bit of time with portage's main manpages, |
73 |
make.conf, emerge, and the portage manpage itself (which covers a bunch |
74 |
of general files with their location and format). revdep-rebuild isn't |
75 |
part of portage but part of gentoolkit, but it too has a very useful and |
76 |
informative manpage. |
77 |
|
78 |
-- |
79 |
Duncan - List replies preferred. No HTML msgs. |
80 |
"Every nonfree program has a lord, a master -- |
81 |
and if you use the program, he is your master." Richard Stallman |