1 |
BRM <bm_witness@×××××.com> posted |
2 |
678360.27502.qm@×××××××××××××××××××××××.com, excerpted below, on Mon, 29 |
3 |
Jun 2009 20:17:10 -0700: |
4 |
|
5 |
> I am still trying to get my AMD64 box up and going - I've got it |
6 |
> updated, and then kind of forgot about it again, so I'm going through it |
7 |
> again. This time, I got it up - everything working with the new Xorg |
8 |
> (1.5.x), and then sync'd to do get fully up to day. I've got 198 |
9 |
> packages to go, but it's dying on kmix. |
10 |
> |
11 |
> It seems to be something similar to this bug: |
12 |
> http://bugs.gentoo.org/155537 |
13 |
> |
14 |
> It keeps complaining about Qt not having library qt-mt. qt 3.3.8b-r1 is |
15 |
> installed (according to emerge qt:3 --pretend, the only way I've been |
16 |
> able to figure out what is at that slot) |
17 |
|
18 |
qt-mt (the multi-thread library) is what most packages test to see if qt |
19 |
(:3) is installed. As such, any If it's not seeing that, it's not seeing |
20 |
qt (:3), and it's a reasonably common error with a number of causes. |
21 |
|
22 |
Below, you mention that you're updating to 3.5.10, presumably from 3.5.9 |
23 |
(or possibly earlier). If that is the case, presumably you've already |
24 |
merged kdelibs-3.5.10, and probably a number of others, without issue. |
25 |
Since kdelibs:3.5 and all the rest of the kde<whatever>:3.5 will depend |
26 |
on qt:3, almost certainly using the same basic qt-mt test, why it's |
27 |
failing on kmix specifically, I don't know... at least not without a |
28 |
configure and build log to try to decypher, likely with the |
29 |
configure.log, and configure script, as well. |
30 |
|
31 |
> It seems there may be a mix between qt 4.4.2 and 4.5.1 (according to |
32 |
> 'emerge --search qt') installed in the qt:4 slot, though running 'emerge |
33 |
> qt:4 --pretend' yields warnings about all dependencies being hard |
34 |
> masked. I don't have any use flags or anything in the mask files to |
35 |
> unmask it - so I'm not sure how they got there. |
36 |
|
37 |
In theory, qt:4 should be entirely independent of qt:3, but intertwining |
38 |
dependencies could possibly mix that up. |
39 |
|
40 |
In any case, the mixed qt-4.4 and 4.5 WILL cause issues for any qt:4 |
41 |
depending packages, so that does need resolved. There has been a bit of |
42 |
experimentation getting the new dependencies working correctly, and the |
43 |
upgrade from qt-4.4 to qt-4.5 hasn't been the smoothest. |
44 |
|
45 |
The recommended way to clean up the qt:4 problem is to try unmerging any |
46 |
qt-4.4 components, and then let portage sort it out, as it'll then pull |
47 |
in all 4.5 versions. A slight variation on that, that should work, but |
48 |
may pull in a few extra bits of qt:4 you don't actually need, is to merge |
49 |
the qt:4 metapackage, which will pull in all the components, instead of |
50 |
letting the dependencies pull in the individual components. You may |
51 |
still need to unmerge the qt-4.4 components manually, however. |
52 |
|
53 |
Regardless of whether you let the individual components be remerged or |
54 |
you merge the metapackage, unless there's some other issues that come up, |
55 |
the qt-4.4 to 4.5 upgrade should be the last time this hassle comes up, |
56 |
as the 4.5 packages are now supposed to have the dependencies setup so if |
57 |
one gets upgraded they all do. However, just for future reference, all |
58 |
qt:4 packages that you have merged should always stay at the same |
59 |
version. Don't upgrade one, regardless of whether dependencies let you |
60 |
or not, without upgrading any others you have merged. (Do note, however, |
61 |
the distinction between Gentoo revision upgrades, the -rX numbers, where |
62 |
they occur, and upstream versions. It's OK to have qt-svg-4.5.1-r1 |
63 |
together with qt-core-4.5.1, for instance, as the version numbers are |
64 |
both 4.5.1, only the Gentoo revision number differs, but it's not OK to |
65 |
have qt-svg-4.4.2 together with qt-core-4.5.1.) |
66 |
|
67 |
> Any ideas on how to clean this up and get 3.5.10 up and working? (BTW, |
68 |
> 3.5.10 installed just fine on my x86 32-bit laptop from which I am |
69 |
> writing this.) |
70 |
|
71 |
Here's what I'd do. First, resolve the qt:4 issues as above. It's |
72 |
possible that'll fix whatever, tho as I said, in theory they're separate |
73 |
and it shouldn't. But since you need to do that anyway, and it should be |
74 |
pretty simple... |
75 |
|
76 |
Next try remerging kdelibs:3.5, just in case. If it still merges fine, |
77 |
you know for sure that the qt-mt detection in general is fine, it's just |
78 |
broken for kmix. If it's broken too, then you have something on the |
79 |
system broken that has to be fixed or you're unlikely to get anything |
80 |
else kde:3.5 or indeed, anything depending on qt:3 at all, to merge. |
81 |
|
82 |
Assuming kdelibs:3.5 remerges fine, next of course go back to the emerge |
83 |
-uD world, and see if it can manage kmix now. If it can't, when it |
84 |
stops, use emerge --resume --skipfirst (no - between skip and first, I |
85 |
had one there, then checked the manpage, and it says --skipfirst, no |
86 |
dash), and it should continue past that package. Since nothing else |
87 |
should really depend on it (save for kdemultimedia-meta, if you merged it |
88 |
instead of the individual packages), that should get you most of the |
89 |
rest, hopefully without additional problems. If there are additional |
90 |
problems, do the same thing. |
91 |
|
92 |
When it finishes that, so --resume has no more it can do, then go back |
93 |
and try the update once again. I've found that often, there's complex |
94 |
build dependencies that aren't always perfectly specified in the |
95 |
ebuilds. By doing what I can, then going back and trying again, often |
96 |
some or all of the ones I couldn't build the first time, now build |
97 |
without issue. Continue with that update, doing the --resume --skipfirst |
98 |
if necessary until again there's no more packages it can do. |
99 |
|
100 |
Repeat until all that are left are broken packages, or stuff that can be |
101 |
merged until the broken packages are fixed and merged. |
102 |
|
103 |
If there's any packages left broken now, you know they're really broken, |
104 |
and it's time to look for fixes. Repost the problem then, attaching the |
105 |
emerge log and the configure.log (if the package has one, portage should |
106 |
tell you about it and where it's located, or at least it seems to here). |
107 |
You can try posting it here, or file a bug directly (attaching those |
108 |
files either way), but in either case it's worth mentioning that you |
109 |
/had/ done the --resume --skipfirst thing, and portage did all it could, |
110 |
and the package is still broken, because that's important information |
111 |
that says it's not a simple screwed up dependency (tho it might still be |
112 |
a more complex missing dependency). Also, with kde packages, mention |
113 |
whether kdelibs had completed successfully, and if most of the rest of |
114 |
kde updated successfully (where it's a general kde update, not just a |
115 |
single package), or not. With this particular error, that's useful info |
116 |
since if the other packages using basically the same test built fine, |
117 |
it's gotta be something strange about this specific package. |
118 |
|
119 |
If you notice, in the bug you mentioned, while it started with amarok, |
120 |
kdelibs wouldn't merge either. The detection of qt-mt was simply broken |
121 |
for all kde packages at that point. What's strange here is that |
122 |
apparently, kdelibs already updated, and merged just fine, since it's a |
123 |
dependency of kmix. If it can remerge, then it's something strange with |
124 |
kmix. If kdelibs:3.5 can't merge either now, then the qt-mt detection is |
125 |
broken in general, and that has to be fixed, somehow, before anything |
126 |
else depending on qt:3 can be expected to merge. |
127 |
|
128 |
-- |
129 |
Duncan - List replies preferred. No HTML msgs. |
130 |
"Every nonfree program has a lord, a master -- |
131 |
and if you use the program, he is your master." Richard Stallman |