public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Fernando Rodriguez <frodriguez.developer@outlook.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Endless preserved-rebuild loop, libmozalloc & more
Date: Tue, 25 Aug 2015 13:43:02 -0400	[thread overview]
Message-ID: <BLU436-SMTP211046063E6A686B0698EB58D610@phx.gbl> (raw)
In-Reply-To: <55DC43B1.6030004@gmail.com>

On Tuesday, August 25, 2015 12:30:09 PM Alan McKinnon wrote:
> On 25/08/2015 04:28, Fernando Rodriguez wrote:
> > On Monday, August 24, 2015 9:31:38 PM Alan McKinnon wrote:
> >> Does anyone have an opinion to offer on bug 501468?
> >>
> >> https://bugs.gentoo.org/show_bug.cgi?id=501468
> >>
> >> It's been annoying me for a week now with this message:
> >>
> >> !!! existing preserved libs:
> >>>>> package: www-client/firefox-40.0.2
> >>  *  - /usr/lib64/firefox/libmozalloc.so
> >>  *      used by /usr/lib64/thunderbird/components/libdbusservice.so
> >> (mail-client/thunderbird-38.2.0)
> >>  *      used by /usr/lib64/thunderbird/components/libmozgnome.so
> >> (mail-client/thunderbird-38.2.0)
> >>  *      used by
> >> /usr/lib64/thunderbird/distribution/extensions/{e2fda1a4-762b-4020-b5ad-
> > a41df1933103}/components/libcalbasecomps.so
> >> (mail-client/thunderbird-38.2.0)
> >>  *      used by 4 other files
> >>
> >>
> >> Both Mozilla products ship this file:
> >>
> >> $ locate libmozalloc
> >> /usr/lib64/firefox/libmozalloc.so
> >> /usr/lib64/thunderbird/libmozalloc.so
> >>
> >> and according to preserved libs, thunderbird linked to the firefox copy.
> >> The only offered solution on the bug is to use a MASK variable, which
> >> seems to me an ugly hammer to swat a fly.
> >>
> >> I was wondering if there's a better way been developed in the last year.
> > 
> > Actually, now I have a general idea of what's going on and that sounds 
like an 
> > acceptable solution but perhaps I could be better. This is what happens:
> > 
> > 1. revdep-rebuild uses ldd to find breakage. It finds breakage in 
> > libdbusservice.so because firefox uses tricks to preload the library from 
it's 
> > directory.
> > 2. revdep-rebuild find that thunderbird provides the library and thinks it 
> > needs to be rebuild. (And wrongly tells you that firefox links against it).
> > 
> > A better way would be:
> > 
> > 1. same as step 1 above
> > 2. revdep-rebuild checks the package that provides the broken binary (in 
this 
> > case the firefox package), if this package also provides the missing 
library 
> > then it's safe to ignore the problem.
> > 3. same as step 2 above.
> > 
> > Another solution is to make patch firefox to use RPATH so ldd can find the 
> > labraries, this would also make prelink work better with firefox but it's 
> > probably not ideal to mantain.
> 
> 
> that does make sense. In my case, it's not revdep-rebuild causing
> problems, it's the preserved-rebuild message at the end of emerge -v
> 
> At this level is there a difference?

I don't know the details but it seems to me that portage either uses revdep-
rebuild to find breakage (without scanning the whole system) before deleting 
the old libs for good or duplicates some of it's logic. Come to think of it, 
the SEARCH_DIR_MASK may not be ideal because if I understand what it does 
correctly then real breakage in firefox won't be detected.

-- 
Fernando Rodriguez


  reply	other threads:[~2015-08-25 17:43 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-24 19:31 [gentoo-user] Endless preserved-rebuild loop, libmozalloc & more Alan McKinnon
2015-08-24 20:04 ` Fernando Rodriguez
2015-08-24 20:42   ` Alan McKinnon
2015-08-25  0:58     ` Fernando Rodriguez
2015-08-25  1:14       ` Fernando Rodriguez
2015-08-25  2:28 ` Fernando Rodriguez
2015-08-25  2:48   ` Fernando Rodriguez
2015-08-25 10:30   ` Alan McKinnon
2015-08-25 17:43     ` Fernando Rodriguez [this message]
2015-08-25 17:58       ` Alan McKinnon
2015-08-25 18:56         ` Fernando Rodriguez
2015-09-24 18:12         ` Fernando Rodriguez
2015-09-25 15:30           ` Alan McKinnon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BLU436-SMTP211046063E6A686B0698EB58D610@phx.gbl \
    --to=frodriguez.developer@outlook.com \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox