On Mon, 19 Sep 2011 16:10:02 +0200, Alan McKinnon wrote about Re: [gentoo-user] Re: Updating libpng: another libtool cockup?: > On Mon, 19 Sep 2011 03:06:30 -0700 > walt wrote: [snip] > > I don't skip the --library step any more. > > That's odd behaviour, I wonder what caused the difference. I guess your graph theory is out to lunch today. ... :-) The problem is portage determining the dependency graph, but ebuilds do not contain enough information to do this thoroughly. The best example, at least in my memory, was the libexpat upgrade about 4 years ago that trashed everybody's system -- many resorted to complete re-installation. At the end of that upgrade, there was an instruction to preform a revdep-rebuild specifically for libexpat.so. Now, this upgrade coincided with a full upgrade to KDE plus a full upgrade to GNOME, all on the same day. As a result, the message to do a revdep-rebuild specifically on libexpat was buried in other bumpf, plus there was other library breakage out the yin-yang -- an extremely large yin-yang. It was a sysadmin's perfect storm. Doing a simple revdep-rebuild, with no library constraint, caused ebuild breakage by the mile. This was because the subroutines in libexpat are used inside ebuild processing by documentation utilities such as ghostscript, xsltproc, etc. OTOH, if one did a specific revdep-rebuild on libexpat, all of those documentation utilities would be rebuilt before the main revdep-rebuild. After that, the ebuilds all went smoothly. Unfortunately, Portage does not have enough information to infer these deep dependencies. This means it cannot schedule the more fundamental revdep-rebuild ahead of those that depend upon it. We have to do that by hand. I hope this has explained why we should take messages about running "revdep-rebuild --library libXXX" seriously. -- Regards, Dave [RLU #314465] *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* dwnoon@ntlworld.com (David W Noon) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*