Greetings. Consider a Makefile.am like so:
bin_PROGRAMS = aprogram sbin_PROGRAMS = otherprogram lib_LTLIBRARIES = library1.la pkglib_LTLIBRARIES = library2.la library2_la_LIBADD = library1.la this will produce, under automake 1.15/1.16, a Makefile.in which has a particular line: install-binPROGRAMS: install-libLTLIBRARIES However, there is a _lack_ of any other relationships. In particular, install-sbinPROGRAMS: install-libLTLIBRARIES install-pkglibLTLIBRARIES: install-libLTLIBRARIES is absent. As a result, `make install -j` can end up in a situation where it tried to install something before library1.la has been installed. Executing install-pkglibLTLIBRARIES (though somewhat an "internal" target) directly is sufficient to showcase the issue. $ make install-pkglibLTLIBRARIES DESTDIR=$PWD/rt /usr/bin/mkdir -p '/home/linux/rt/usr/local/lib/test' /bin/sh ./libtool --mode=install /usr/bin/install -c library2.la '/home/linux/rt/usr/local/lib/test' libtool: warning: relinking 'library2.la' libtool: install: (cd /home/linux; /bin/sh "/home/linux/libtool" --silent --tag CC --mode=relink gcc -g -O2 -o library2.la -rpath /usr/local/lib/test library2.lo library1.la -inst-prefix-dir /home/linux/rt) /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: cannot find -lrary1 collect2: error: ld returned 1 exit status libtool: error: error: relink 'library2.la' with the above command before installing it make: *** [Makefile:453: install-pkglibLTLIBRARIES] Error 1 (The testcase is temporarily uploaded to https://github.com/jengelh/am-test ) The install-binPROGRAMS line comes from bin/automake.in here: # FIXME: Gross! if (var ('lib_LTLIBRARIES') && var ('bin_PROGRAMS')) { $output_rules .= "install-binPROGRAMS: install-libLTLIBRARIES\n\n"; } if (var ('nobase_lib_LTLIBRARIES') && var ('bin_PROGRAMS')) { $output_rules .= "install-binPROGRAMS: install-nobase_libLTLIBRARIES\n\n"; } Barring the use of complete deps on ${DESTDIR} objects, I think that this gross hack needs extending of all install-* targets to gain a dep on install-libLTLIBRARIES. [ Ideally, Makefile could contain install-pkglibLTLIBRARIES: ${DESTDIR}${libdir}/library1.la ${DESTDIR}${libdir}/library1.la: libtool relink ..... but I figure this may be much more work than extending install-*; and it may turn out not be portable. ]