On Friday 08 Aug 2014 16:21:56 Alan McKinnon wrote:
> On 08/08/2014 15:11, gottl...@nyu.edu wrote:
> > On Fri, Aug 08 2014, wra...@wraeth.id.au wrote:
> >> On Fri, 2014-08-08 at 08:23 +0200, J. Roeleveld wrote:
> >>> I notice a few perl blockers.
> >>> You could try the following:
> >>> 
> >>> # emerge -vuD1 $(qlist -IC 'virtual/perl-*')
> >>> # perl-cleaner --all -v -- -v
> >>> 
> >>> And then retry to update world.
> >>> I've been encountering some perl blockages myself, and this cleared it
> >>> up for me.
> >> 
> >> I also notice a conflict between
> >> 
> >>   media-video/ffmpeg-1.2.6-r1::gentoo, ebuild scheduled for merge
> >>   
> >>   media-video/libav-9.14::gentoo, installed
> >> 
> >> You may want to include which one you prefer (ffmpeg or libav) in your
> >> 
> >> call to emerge, and possibly include "--with-bdeps=y":
> >>   `emerge -1uDNav --with-bdeps=y @world media-video/<selection>`
> >> 
> >> Note the addition of the '-1' or "--oneshot" option - you should always
> >> use this when specifying libraries to emerge.
> > 
> > (Yes about --oneshot)
> > 
> > The choice of ffmpeg vs libav seems non-deterministic ??
> > 
> > I have a shell open directly on the machine e6510 and am ssh'ed
> > into e6510 from another machine
> > 
> > On the direct shell two successive runs of
> > 
> > e6510 ~ # emerge --update --changed-use --deep  @world
> > (I have EMERGE_DEFAULT_OPTS="--ask --deep --tree --verbose --jobs
> > --load-average=5")
> > 
> > gave different results.  The first one gave the error msg about libav
> > and ffmpeg conflicting; the second gave no error and is ready to go.  I
> > looked at the tree output and see that the successful one has an
> > uninstall of libav right before the install line for ffmpeg.  The
> > unsuccessful one does not have that line.
> > 
> > On the ssh shell, the first few tries gave the conflict error msg; but
> > then one succeeded (again proposing to uninstall libav).
> > 
> > Perhaps the dependency search uses multiple threads??
> > 
> > Since I must choose between libav and ffmpeg, I will use the choice that
> > portage (sometimes) makes and run the successful emerge command,
> > i.e. say yes to the question from --ask.
> > 
> > Is this nondeterminism documented or have I done something wrong.
> 
> It's working as designed. The various deps for ffmpeg vs libav allow
> either one to satisfy the dep, especially if you have virtual/ffmpeg in
> world.
> 
> This new dynamic dep stuff allows portage a degree of freedom in
> selecting such providers and sometimes it decides to use the one you
> don't have. To satisfy that decision, it must then uninstall what you
> have. I suspect the root cause of such apparently random behaviour is
> that portage is loading your installed apps into an associative array,
> and the order if items in those are random.
> 
> Two solutions::
> 
> 1. use --backtrack <some big number>
>    this tells portage to search deeper and hopefully realize you
>    already have libav
> 
> 2. Put libav in world, this will stop portage from trying to be helpful
> 
> 
> 
> I prefer the second choice as it makes things very explicit.

I kept ffmpeg, because I am used to it and because it seems to be more up to 
date than libav, plus it incorporates everything the libav fork has created 
since.  However, I am not sure if that is the recommended solution - at least 
in gentoo.  I'm not asking to start a flamewar between parent and fork 
advocates, but would like to check if I my understanding is wrong.

Views and experience on using either are welcomed.

-- 
Regards,
Mick

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to