Gentoo Archives: gentoo-user

From: Kai Krakow <hurikhan77@×××××.com>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Re: Qt-4.8.7 bug
Date: Sun, 21 May 2017 10:16:55
Message-Id: 20170521121628.0a41d4ce@jupiter.sol.kaishome.de
In Reply to: Re: [gentoo-user] Re: Qt-4.8.7 bug by Peter Humphrey
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.