Re-ordering paragraphs...

> Not on all systems, but I think that will happen with gcc/ld though.
> I think they will only export dllexported symbols if at least one such
> symbol exist. However, this causes some trouble if you e.g. have a
> library that is not decorated with dllexport and which uses ltdl as a
> convinience library. Since ltdl is decorated with dllexport, only the
> ltdl symbols are exported in that case, which of course is not what
> you generally want...

Using ltdl seems like the more complicated case.  Clearly I'm biased, but
requiring extra work to prepare a library for ltdl seems more natural than
the other way around.

> This is by design. For the msvc branch, libtool digs
> through the object files to get all public symbols and
> exports those, regardless of any dllexport decorations.

This is a bit surprising.  If gcc/ld doesn't do it, and msvc doesn't do it,
why does libtool do it by default?

> >  What can I do to convince libtool to keep function foo
> > hidden?
> 
> Use one of the -export-symbols SYMFILE or
> -export-symbols-regex REGEX options.

Whether it's the default or not, is there some way to convince libtool to
look at the __declspec(export) decorations I've already got in place?

-DB



_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool

Reply via email to