I've grabbed the latest libtool sources from the pr-msvc-support branch, hoping to get more control over where libtool installs DLLs. Unfortunately, my DLLs are going to the same place they were before.
I got libtool to do the advertised thing when I invoke it manually, like this: /bin/sh ./libtool --tag=CC --mode=link cl -MD -Zi -no-undefined -export-symbols symfile -Wl,-DEBUG -o libfoo.la -bindir <abs_path_to>/install/bin/Debug -rpath <abs_path_to>/install/lib/Debug libfoo_la-public.lo libfoo_la-private.lo but when automake invokes libtool for me, it doesn't specify -bindir. So, the .libs/libfoo.lai generated by automake contains: # The name that we can dlopen(3). dlname='../bin/foo-0.dll' The end result is that foo-0.dll is installed to <abs_path_to>/install/lib/Debug/../bin/foo-0.dll or <abs_path_to>/install/lib/bin/foo-0.dll which isn't where I want it to go. When I manually invoke libtool with the -bindir option, .libs/libfoo.lai contains: # The name that we can dlopen(3). dlname='../../bin/Debug/foo-0.dll' which ends up with foo-0.dll installed in <abs_path_to>/install/lib/Debug/../../bin/Debug/foo-0.dll or <abs_path_to>/install/bin/Debug/foo-0.dll. I'm not sure what needs to change to get the Makefile from automake/autoconf to specify -bindir to libtool. Can someone give me a hand? Is there something (else) I'm missing here? I'm invoking configure like this: $ ../configure CC=cl CFLAGS='-MD -Zi' LD=link NM='dumpbin -symbols' AR=lib STRIP=: RANLIB=: --disable-static --prefix=<abs_path_to>/install --libdir='${prefix}/lib/Debug' --bindir='${prefix}/bin/Debug' Thanks much. -DB $ ./libtool --version libtool (GNU libtool 1.3141 2009-09-12) 2.2.7a $ automake --version automake (GNU automake) 1.11 $ autoconf --version autoconf (GNU Autoconf) 2.63 _______________________________________________ http://lists.gnu.org/mailman/listinfo/libtool