libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

control where win32 DLLs get installed behavior


From: David Byron
Subject: control where win32 DLLs get installed behavior
Date: Wed, 28 Oct 2009 15:56:02 -0700

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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]