Gentoo Archives: gentoo-user

From: Alan McKinnon <alan.mckinnon@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Endless preserved-rebuild loop, libmozalloc & more
Date: Tue, 25 Aug 2015 10:30:31
Message-Id: 55DC43B1.6030004@gmail.com
In Reply to: Re: [gentoo-user] Endless preserved-rebuild loop, libmozalloc & more by Fernando Rodriguez
1 On 25/08/2015 04:28, Fernando Rodriguez wrote:
2 > On Monday, August 24, 2015 9:31:38 PM Alan McKinnon wrote:
3 >> Does anyone have an opinion to offer on bug 501468?
4 >>
5 >> https://bugs.gentoo.org/show_bug.cgi?id=501468
6 >>
7 >> It's been annoying me for a week now with this message:
8 >>
9 >> !!! existing preserved libs:
10 >>>>> package: www-client/firefox-40.0.2
11 >> * - /usr/lib64/firefox/libmozalloc.so
12 >> * used by /usr/lib64/thunderbird/components/libdbusservice.so
13 >> (mail-client/thunderbird-38.2.0)
14 >> * used by /usr/lib64/thunderbird/components/libmozgnome.so
15 >> (mail-client/thunderbird-38.2.0)
16 >> * used by
17 >> /usr/lib64/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-
18 > a41df1933103}/components/libcalbasecomps.so
19 >> (mail-client/thunderbird-38.2.0)
20 >> * used by 4 other files
21 >>
22 >>
23 >> Both Mozilla products ship this file:
24 >>
25 >> $ locate libmozalloc
26 >> /usr/lib64/firefox/libmozalloc.so
27 >> /usr/lib64/thunderbird/libmozalloc.so
28 >>
29 >> and according to preserved libs, thunderbird linked to the firefox copy.
30 >> The only offered solution on the bug is to use a MASK variable, which
31 >> seems to me an ugly hammer to swat a fly.
32 >>
33 >> I was wondering if there's a better way been developed in the last year.
34 >
35 > Actually, now I have a general idea of what's going on and that sounds like an
36 > acceptable solution but perhaps I could be better. This is what happens:
37 >
38 > 1. revdep-rebuild uses ldd to find breakage. It finds breakage in
39 > libdbusservice.so because firefox uses tricks to preload the library from it's
40 > directory.
41 > 2. revdep-rebuild find that thunderbird provides the library and thinks it
42 > needs to be rebuild. (And wrongly tells you that firefox links against it).
43 >
44 > A better way would be:
45 >
46 > 1. same as step 1 above
47 > 2. revdep-rebuild checks the package that provides the broken binary (in this
48 > case the firefox package), if this package also provides the missing library
49 > then it's safe to ignore the problem.
50 > 3. same as step 2 above.
51 >
52 > Another solution is to make patch firefox to use RPATH so ldd can find the
53 > labraries, this would also make prelink work better with firefox but it's
54 > probably not ideal to mantain.
55
56
57 that does make sense. In my case, it's not revdep-rebuild causing
58 problems, it's the preserved-rebuild message at the end of emerge -v
59
60 At this level is there a difference?
61
62
63 --
64 Alan McKinnon
65 alan.mckinnon@×××××.com

Replies

Subject Author
Re: [gentoo-user] Endless preserved-rebuild loop, libmozalloc & more Fernando Rodriguez <frodriguez.developer@×××××××.com>