1 |
Am Sun, 21 May 2017 09:38:31 +0100 |
2 |
schrieb Peter Humphrey <peter@××××××××××××.uk>: |
3 |
|
4 |
> On Saturday 20 May 2017 18:39:07 Kai Krakow wrote: |
5 |
> > Am Sat, 20 May 2017 16:36:08 +0100 |
6 |
> > |
7 |
> > schrieb Mick <michaelkintzios@×××××.com>: |
8 |
> > > On Saturday 20 May 2017 10:48:52 Mick wrote: |
9 |
> [...] |
10 |
> [...] |
11 |
> > > [...] |
12 |
> > > [...] |
13 |
> > > [...] |
14 |
> > > [...] |
15 |
> > > [...] |
16 |
> > > [...] |
17 |
> > > |
18 |
> [...] |
19 |
> > > |
20 |
> > > [...] |
21 |
> > > |
22 |
> [...] |
23 |
> [...] |
24 |
> > > |
25 |
> > > It seems revdep-rebuild'ing against library='libQtCore.so.4' also |
26 |
> > > rebuilds the newly installed Qt packages. This is why there so |
27 |
> > > many packages to rebuild. |
28 |
> > |
29 |
> > That's why I suggested using "--changed-deps": It doesn't rebuild |
30 |
> > packages that provide the library itself and have already been built |
31 |
> > after the library provider... |
32 |
> > |
33 |
> > OTOH, it doesn't check binary dependence, just what is written into |
34 |
> > the ebuilds itself. But it should work most of the time. |
35 |
> > |
36 |
> > A combination of two emerge invocations may work, too: |
37 |
> > |
38 |
> > # emerge -DNua world --changed-deps |
39 |
> > # emerge -1a @preserved-rebuild --changed-deps |
40 |
> > |
41 |
> > This also worked well for me when I did the gcc upgrade. |
42 |
> > |
43 |
> > But I think the need to use changed-deps to rebuild dependers |
44 |
> > should be considered a bug and be reported. Portage has support for |
45 |
> > sub-slot dependencies to describe such binary breakage during |
46 |
> > upgrades and automatically rebuild the dependers. |
47 |
> |
48 |
> Have you seen https://bugs.gentoo.org/show_bug.cgi?id=595618 ? It |
49 |
> says that "Qt plugins compiled with gcc-4 are incompatible with |
50 |
> <dev-qt/qtcore-4.8.7 compiled with gcc-5." I don't see how portage |
51 |
> can be expected to anticipate that. On the other hand, some kind of |
52 |
> notice could be issued, and bug 618922 is pursuing that. (That's the |
53 |
> one I started this thread with.) |
54 |
|
55 |
I was thinking about how portage could support the user here: |
56 |
|
57 |
Portage could record which compiler in which version was used building |
58 |
the package. It already records tons of information in /var/db/pkg. |
59 |
There's CFLAGS but that doesn't really help here. |
60 |
|
61 |
What I did after "emerge -DNua world --changed-deps" while upgrading |
62 |
GCC at the same time, was finding all packages in /var/db/pkg that had |
63 |
mtime older than the CFLAGS file of the GCC build. While changed-deps |
64 |
seemed to capture most of what needed to be rebuilt, I just wanted to be |
65 |
sure the rest of the system was rebuilt, too. |
66 |
|
67 |
Of course there are ebuilds that just create data files or scripts |
68 |
which could've been excluded from rebuilding, and packages that are |
69 |
built with different compilers than gcc... That's why I thought it |
70 |
would be nice if portage recorded the exact compiler version used. |
71 |
|
72 |
|
73 |
-- |
74 |
Regards, |
75 |
Kai |
76 |
|
77 |
Replies to list-only preferred. |