This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

How to build an DLL ?


flam@oceanes.fr writes:
 > Hi everybody,
 > 
 > 
 > I have created several functions in a file MY_LIBRARY.C
 > 
 > I would like to create MY_LIBRARY.DLL. How can i do ?
 > Apparently i would have first to create a .DEF :
 >         echo EXPORTS > MY_LIBRAIRIE.DEF
 > Then	nm <Something>

nm <your object files> | grep <etc> (see the website)

 > Then	ld --base-file <How can i create a .base ?>

ld creates .base files.

 > Then	dlltool <<Something>)
 > I tried different maners and it does'nt work...

It does work, very well in fact.

I suggest you visit the cygnus webiste at
http://www.cygnus.com/misc/gnu-win32/ and read the article on building
relocatable dlls.

 > What is the difference between relocatable DLL and non-relocatable DLL ?

A relocatable dll is one that can be relocated by the loader during
program startup. Relocation is required if two dlls try to live in the
same place in memory. If you have two such dlls and the second one
loaded can't be relocated, your program will get an initialisation
error.
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]