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 |