Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: making dynamic libraries with gcc



On Jan 22, 2004, at 8:16 PM, Rich Cook wrote:

Given a file foo.c, with several functions defined in it, how to create a foo.dylib file that can be used as argument to dlopen()? Thanks.

Note that MacOS X differentiates between shared libraries (.dylib) and loadable modules ("bundles" with any extension). You link against a .dylib, but you cannot use dlopen() with a dynamic library. If you're using dlopen(), then you need to use "-bundle" when creating the shared object. The most succinct description is probably the one provided by fink:


<http://fink.sourceforge.net/doc/porting/shared.php>

Once you modify your build tools to use the proper compiler flags, then you'll be able to load the modules pretty easily. Panther includes dlopen() automatically. On earlier systems you'll need to install libdlcompat.

Hope this helps,
Chris

--
Chris Scharver
Electronic Visualization Laboratory
The University of Illinois at Chicago
_______________________________________________
scitech mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/scitech
Do not post admin requests to the list. They will be ignored.

References: 
 >making dynamic libraries with gcc (From: Rich Cook <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.