Subject: RE: Problems with DLL creation using LIBTOOL
From: Rafael Jesus Alcantara Perez <[email-masked]>
To: "Suhaib M. Siddiqi" <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Mon, 11 Oct 1999 01:25:19 +0200

On Mon, 11 Oct 1999, you wrote:
> Your DLL.def file (libadt-3-0-6.dll.def looks kinda vvery strange to me.
> How did you create it?
> 
I used LIBTOOL, so I only know the commands executed by that program:

--last--part--of--make--
generating symbol list for `libadt.la'
test -f .libs/libadt-3-0-6.dll-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < ../../libtool >
.libs/libadt-3-0-6.dll-ltdll.c
 test -f .libs/libadt-3-0-6.dll-ltdll.o || (cd .libs && c++ -c libadt-3-0-6.dll-ltdll.c)
 dlltool --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def .libs/libadt-3-0-6.dll-def .libs/libadt-3-0-6.dll-ltdll.o  base_exception.o exceptions.o string.o
 sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < .libs/libadt-3-0-6.dll-def > .libs/libadt.exp
echo EXPORTS > .libs/libadt-3-0-6.dll-def
 _lt_hint=1; for symbol in `cat .libs/libadt.exp`; do echo " $symbol @ $_lt_hint ; " >> .libs/libadt-3-0-6.dll-def; _lt_hint=`expr 1 + $_lt_hint`; done
 test -f .libs/libadt-3-0-6.dll-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < ../../libtool > .libs/libadt-3-0-6.dll-ltdll.c
 test -f .libs/libadt-3-0-6.dll-ltdll.o || (cd .libs && c++ -c libadt-3-0-6.dll-ltdll.c)
 c++ -Wl,--base-file,.libs/libadt-3-0-6.dll-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o .libs/libadt-3-0-6.dll .libs/libadt-3-0-6.dll-ltdll.o
 base_exception.o exceptions.o string.o
 dlltool --as=as --dllname libadt-3-0-6.dll --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def .libs/libadt-3-0-6.dll-def --base-file .libs/libadt-3-0-6.dll-base --output-exp .libs/libadt-3-0-6.dll-exp
dlltool: Syntax error in def file .libs/libadt-3-0-6.dll-def:1
<< c++ -Wl,--base-file,.libs/libadt-3-0-6.dll-base .libs/libadt-3-0-6.dll-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o .libs/libadt-3-0-6.dll .libs/libadt-3-0-6.dll-ltdll.o  base_exception.o exceptions.o string.o
.libs/libadt-3-0-6.dll-exp(.edata+0x3c):fake: undefined reference to `int'
.libs/libadt-3-0-6.dll-exp(.edata+0x40):fake: undefined reference to `pair'
.libs/libadt-3-0-6.dll-exp(.edata+0x44):fake: undefined reference to `value__t7rb_tree5Zt4pair2ZiZiZt4pair2ZCt4pair2ZiZiZiZt9select1st1Zt4pair2ZCt4pair2ZiZiZiZt4less1Zt4pair2ZiZiZt24__default_alloc_template2b0i0Pt14__rb_tree_node1Zt4pair2ZCt4pair2ZiZiZirb_tree'
collect2: ld returned 1 exit status
make[3]: *** [libadt.la] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive-am] Error 2
--+--+--+--+--+--+--+--+--

It seems to me that it is more a bug in LIBTOOL that a DLLTOOL bug.

TIA.
Rafa.
-- 
+----------
| Rafael Jesus Alcantara Perez. P.O. Box 1199, 29080 Malaga, SPAIN.
| Email: mailto:[email-masked]
| PGP public key: http://www.vnet.es/~ralcan/public-key.asc
+---------------------
"For every complex problem there is a solution that is concise, clear, simple, and wrong."
(H. L. Mencken)

--
Want to unsubscribe from this list?
Send a message to [email-masked]