Hello, I use libtool-2.4.2. In the Makefile.am I have lib_LTLIBRARIES = libA.a libB.la libA_la_SOURCES = ... libB_la_SOURCES = ... libB_la_LIBADD = libA.la bin_PROGRAMS = c c_SOURCES = ... c_LDADD = libB.la This creates a file libB.la which lists libA.la (with its full path) under dependency_libs . Executing "make" leads to libtool --tag=CC --mode=link gcc -o c libB.la And now, on my system this expands (correctly) to libtool: link: gcc -o c /.libs/libB.so /.libs/libA.so but on another system it resolves to libtool: link: gcc -o c /.libs/libB.so -> ERROR ld: c.o: undefined reference to symbol 'A' ld: note: 'A' is defined in DSO libA.so.0 so try adding it to the linker command line libA.so.0: could not read symbols: Invalid operation collect2: ld returned 1 exit status My question is: Why is libB.la sometimes expanded by libtool --mode=link v2.4.2 to "libB.so libA.so" and sometimes only to "libB.so"? Thanks very much in advance for your answer Дилян