This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
Re: Apologies
- To: Pascal dot Obry at der dot edfgdf dot fr
- Subject: Re: Apologies
- From: Ian Lance Taylor <ian at cygnus dot com>
- Date: Mon, 23 Feb 1998 12:10:26 -0500
- CC: root at jacob dot remcomp dot fr, gnu-win32 at cygnus dot com, noer at cygnus dot com
Date: 23 Feb 1998 13:33:15 +0100
From: Pascal OBRY <Pascal.Obry@der.edfgdf.fr>
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
"gnu-win32-request@cygnus.com" with one line of text: "help".