This was seen with the libgo installation [1], but from my point of view can happen when the install target is called with -j >1, libtool seems to fall back to the system libraries if the library in the install location is not available (which is always the case if you install into an empty dir set with DESTDIR). Currently it just works for a non-parallel install because the dependencies in Makefile.def are created in the right order.
Ok for the trunk? Matthias [1] http://gcc.gnu.org/ml/gcc-patches/2012-12/msg01192.html
2012-12-20 Matthias Klose <d...@ubuntu.com> * Makefile.def (install-target-libgfortran): Depend on install-target-libquadmath, install-target-libgcc. (install-target-libsanitizer): Depend on install-target-libgcc. (install-target-libjava): Depend on install-target-libgcc. (install-target-libitm): Depend on install-target-libgcc. (install-target-libobjc): Depend on install-target-libgcc. (install-target-libstdc++-v3): Depend on install-target-libgcc. * Makefile.in: Regenerate. Index: Makefile.def =================================================================== --- Makefile.def (Revision 194635) +++ Makefile.def (Arbeitskopie) @@ -515,6 +515,13 @@ dependencies = { module=all-target-libstdc++-v3; on=configure-target-libgomp; }; dependencies = { module=install-target-libgo; on=install-target-libatomic; }; +dependencies = { module=install-target-libgfortran; on=install-target-libquadmath; }; +dependencies = { module=install-target-libgfortran; on=install-target-libgcc; }; +dependencies = { module=install-target-libsanitizer; on=install-target-libgcc; }; +dependencies = { module=install-target-libjava; on=install-target-libgcc; }; +dependencies = { module=install-target-libitm; on=install-target-libgcc; }; +dependencies = { module=install-target-libobjc; on=install-target-libgcc; }; +dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; }; // Target modules in the 'src' repository. lang_env_dependencies = { module=libtermcap; };