Am Tue, 30 Aug 2016 03:55:32 +0200
schrieb meino.cra...@gmx.de:

> Daniel Frey <djqf...@gmail.com> [16-08-30 03:48]:
> > On 08/29/2016 11:11 AM, waltd...@waltdnes.org wrote:  
> > > On Mon, Aug 29, 2016 at 06:29:50PM +0200, meino.cra...@gmx.de
> > > wrote  
>  [...]  
>  [...]  
>  [...]  
> > > 
> > >   The first suggestion in a case like this is to run
> > > revdep-rebuild.  As a matter of fact, it probably wouldn't hurt
> > > to run revdep-rebuild after every update.
> > >   
> > 
> > Yes, I do. Portage occasionally misses a rebuild. It's a lot better
> > now at catching them but it still misses them.
> > 
> > 
> > 
> > Dan
> >   
> 
> Ok, we now know that depclean and redep rebuild are needed after each
> update. It is someting, which I put together into one script which 
> I run after each update.
> 
> And we know that portage seems to be guilty. And that it should not be
> guilty. And that it does better in this cases.
> 
> One thing remains:
> How can I get that guvcview up and running?

Try "emerge -1a @preserved-rebuild". It should catch preserved libs
that revdep-rebuild cannot see at missing but doesn't scan neither
because it doesn't consider them as part of the installed files.

Usually, after rebuilding everything to new metadata, you no longer use
revdep-rebuild because the preserved-libs feature renders it mostly
useless. Instead, @preserved-rebuild jumps in to rebuild and cleanup.

You may, however, catch a situation where the configure phase detects
the new version of a lib but the linker phase uses the preserved lib of
an older version of a dependent package. I'd consider this a bug of the
ebuild or the package's build system usually. The way out here is do
forcefully uninstall the package with the "broken" preserved lib, then
reinstall what is not working.

It'd try this:

# Try to unmerge the package that portage thinks the file belongs to:
$ emerge -Ca /usr/lib/libgviewv4l2core-1.0.so.1
(or whereever this file should be, you can use pfl for finding out)

# rebuild binary broken packages now (we used -C, not -c)
$ revdep-rebuild

# rebuild packages using preserved libs
$ emerge -1a @preserved-rebuild

# rebuild your package now, it should now link to the correct lib
$ emerge -1a guvcview

If that still doesn't help, try "qcheck -BHTP" to find packages with
missing files. Rebuild those:

$ emerge -1a $(qcheck -BHTP)

If that also doesn't help, pretend that no dependencies are installed -
this may rebuild A LOT of packages:

$ emerge -1e guvcview

-- 
Regards,
Kai

Replies to list-only preferred.


Reply via email to