About Linux FAQ

Browse More FAQs:

How do I Create files needed to build and use DLLs under Linux?

Posted by Vivek Gite [Last updated: March 5, 2006]

You need to use command called dlltool. It create files needed to build and use DLLs. dlltool reads its inputs, which can come from the -d and -b options as well as object files specified on the command line. It then processes these inputs and if the -e option has been specified it creates an exports file. If the -l option has been specified it creates a library file and if the -z option has been specified it creates a def file. Any or all of the -e, -l and -z options can be present in one invocation of dlltool.

Here is an example of creating a DLL from a source file dll.c:

$ gcc -c dll.c
$ dlltool -e exports.o -l dll.lib dll.o
$ gcc dll.o exports.o -o dll.dll

Where,

  • -c : Specifies that when dlltool is creating the exports and library files it should omit the ".idata5" section. This is for compatibility with certain operating systems.
  • -e: Specifies the name of the export file to be created by dlltool.
  • -l : Specifies the name of the library file to be created by dlltool.

Creating a program (from an object file called program.o) that uses that DLL:

$ gcc program.o dll.lib -o program

Read the man page of dlltool for more information.

Subscribe to our free e-mail newsletter or RSS feed to get all updates. You can Email this page to a friend.

Related Other Helpful FAQs:

Leave a Reply

We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Copyright © 2006-2008 nixCraft. All rights reserved - TOS/Disclaimer - Privacy policy - Sitemap - Powered by Open source software.