1 |
On Tue, Jan 20, 2009 at 12:11 AM, KH <gentoo-user@××××××××××××××××.de>wrote: |
2 |
|
3 |
> Daniel Pielmeier schrieb: |
4 |
> > 2009/1/19 KH <gentoo-user@××××××××××××××××.de>: |
5 |
> > |
6 |
> >> This link was great help for me. Told me everything and how to read the |
7 |
> >> blocker. So I did: |
8 |
> >> |
9 |
> >> #emerge -avC qt-4.3.3 |
10 |
> >> #emerge -DuavN world (This installed qt-4.4.2) |
11 |
> >> |
12 |
> >> But now I do have a problem. When I run |
13 |
> >> |
14 |
> >> #emerge --depclean -av |
15 |
> >> |
16 |
> >> I receive the following output: |
17 |
> >> [snip] |
18 |
> >> |
19 |
> >>>>> These are the packages that would be unmerged: |
20 |
> >>>>> |
21 |
> >> dev-db/sqlite |
22 |
> >> selected: 2.8.16-r4 |
23 |
> >> protected: none |
24 |
> >> omitted: 3.6.6.2 |
25 |
> >> |
26 |
> >> x11-libs/qt |
27 |
> >> selected: 4.4.2 |
28 |
> >> protected: none |
29 |
> >> omitted: 3.3.8b-r1 |
30 |
> >> |
31 |
> >> [snip some other qt-split-packages] |
32 |
> >> |
33 |
> >> What did I miss? This results in an infinite circle of unmerging and |
34 |
> >> emerging. |
35 |
> >> |
36 |
> >> |
37 |
> > |
38 |
> > I don't think --with-bdeps will solve this issue as qt- packages are |
39 |
> > no build-time-dependencies they are needed at runtime too. |
40 |
> > Did the affected packages got installed by your previous emerge world |
41 |
> > command. My guess is that depclean wants to remove this packages |
42 |
> > because they are simply not needed by other packages. Did they really |
43 |
> > get pulled in when doing another world update after removing the |
44 |
> > packages? |
45 |
> > |
46 |
> > Maybe checking again your world file or the files in |
47 |
> > /etc/portage/package.* for something suspicious is a good idea here. |
48 |
> > |
49 |
> > |
50 |
> |
51 |
> Hi, |
52 |
> |
53 |
> yes I had the blocker when running emerge -DuavN world . I unmerged |
54 |
> qt-4.3* and ran emerge -DuavN world again. That brought in the qt-4.4.2. |
55 |
> Tho investigate further: |
56 |
> |
57 |
> equery d x11-libs/qt |
58 |
> [ Searching for packages depending on x11-libs/qt... ] |
59 |
> app-crypt/pinentry-0.7.5 (qt3? x11-libs/qt:3) |
60 |
> app-text/poppler-bindings-0.8.7 (qt3? >=x11-libs/qt-3.3:3) |
61 |
> (qt4? >=x11-libs/qt-4.3:4) |
62 |
> media-video/vlc-0.9.8a (qt4? =x11-libs/qt-4.3*:4) |
63 |
> (skins? =x11-libs/qt-4.3*:4) |
64 |
> net-im/skype-2.0.0.63 (x86 & !qt-static? =x11-libs/qt-4.3*:4) |
65 |
> |
66 |
> Those are still depending on qt-4.3* but non are depending on 4.4.2. |
67 |
> |
68 |
> I will try an emerge -1av skype to learn what it will depend on afterwards. |
69 |
> |
70 |
> kh |
71 |
> |
72 |
> You seem to have missed the point of this upgrade. The qt packages were |
73 |
split, as the single qt package was huge, without good reason. The ideal |
74 |
sequence of events (as I understand it) was: |
75 |
1. qt-4.3.3 and split packages given mutual exclusion depends. |
76 |
2. All packages depending on qt-4.3.3 get updated to having an || dependency |
77 |
between qt-4.3.3 and the correct split components. |
78 |
3. split components stabilized, and qt-4.3.3 simultaneously masked (thus, no |
79 |
blockages, everyone upgrades) |
80 |
4. qt-4.4.2 kept around for backward compatibility/badly formed e-builds, |
81 |
but is only a virtual package (check it out, it only has dependencies) |
82 |
|
83 |
Somehow, 2 didn't get finished, causing the masking in 3 to get dropped, |
84 |
hence the blocking. |
85 |
Nothing should ever need to depend on qt-4.4, as only needed components |
86 |
should be pulled in. |
87 |
Reference: http://bugs.gentoo.org/show_bug.cgi?id=248038 |
88 |
|
89 |
As has been pointed out, equery d is not a good indicator of dependency. Use |
90 |
emerge -pv --depclean <atom> for a real indication (equery does a grep of |
91 |
the ebuild file, emerge only reports active dependencies, which is what most |
92 |
people care about. I've been tempted to file a bug for a while, but this |
93 |
seems to be the accepted behavior). |
94 |
|
95 |
Nick |