[IGSTK-Developers] Re: IGSTK Book & Minutes for Jan 25

Karthik Krishnan karthik.krishnan at kitware.com
Thu Feb 1 13:48:07 EST 2007


>* > >
*>* > > When building the library,  dllexport tells the compiler/linker
*>* > > to actually make the symbol visible outside the dll.  Without it, its
*as
>* > > if the entire dll is one module and all the functions are static.
*>* > > You can accomplish almost the same thing as dllexport by creating a
*>* > > .def file which lists all the functions to export and passing that to*



On 2/1/07, Nobuhiko Hata <hata at bwh.harvard.edu> wrote:
>
> Hi All
>
> Follow-up to the note below...
>
> I compiled IGSTK in dynamic library format, and successfully call a
> class in it from Slicer.


I guess you were building on linux.

On windows you need to export the symbols using dllexport to tell the linker
to  make the symbol visible outside the dll. Since IGSTK doesn't define the
dllexport directive, its equivalent to IGSTK having the entire dll as one
module and all functions static (visible only within the dll).

In slicer, each module is a shared library, loaded at runtime. So my guess
is slicer on windows, when it opens the dll using dlopen, won't see any
symbols in there.

- karthik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/igstk-developers/attachments/20070201/75558715/attachment-0001.html>


More information about the IGSTK-Developers mailing list