Subject: Re: Apologies
From: [email-masked] (Ian Lance Taylor)

23 Feb 1998 19:21:55 -0800
Message-ID: <[email-masked]>
References: <0735634F16C8B011*/c=fr/admd=atlas/prmd=edfgdf/o=der/ou=der-ccmail/s=Obry/g=Pascal/@MHS>
To: [email-masked]
Cc: [email-masked], [email-masked], [email-masked]

   Date: 23 Feb 1998 13:33:15 +0100
   From: Pascal OBRY <[email-masked]>

   It seem to me that there is some steps not needed !

     $(LD) --base-file BASEFILE --dll -o DLLNAME OBJS LIBS -e ENTRY

     $(DLLTOOL) --dllname DLLNAME --def DEFFILE --base-file BASEFILE
	   --output-exp EXPFILE --output-lib LIBFILE

     $(LD) EXPFILE -dll -o DLLNAME OBJS LIBS -e ENTRY

   This make a relocatable DLL and the import library file (LIBFILE .a).
   This has worked fine everytime for me.

It's true that you can combine the --output-lib with an earlier
invocation of dlltool.  However, skipping the second round of dlltool
and ld can lead to trouble in certain cases, depending upon how your
linker script is set up, what you have in DEFFILE, and what exactly
goes into EXPFILE.  For example, if you use the DESCRIPTION keyword in
your DLL file, EXPFILE will put stuff into the .rdata section, which
can change the addresses of other sections, and invalidate the
BASEFILE and hence the EXPFILE.

If you know what you are doing, you can use a shorter procedure.  I
was describing a procedure which I hope will always work in every case
for everyone.

Ian
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".