Re: exports dll symbol methods even if compiled static
Behdad Esfahbod <[email protected]> Wed, 05 Sep 2012 16:58:01 -0400
| Newsgroups | gmane.comp.internationalization.fribidi |
|---|---|
| Message-ID | <[email protected]> |
On 09/05/2012 02:35 PM, Roger Pack wrote: > Hello all. > I noticed that if I cross compile fribdi (for windows) with > --enable-static --disable-shared, then I cross compile libass the same > way, then attempt to use it, I get this: > > > mingw-w64-i686/i686-w64-mingw32/lib/libass.a(ass_shaper.o): In > function `ass_shaper_shape’: > win32/libass-0.10.0/libass/ass_shaper.c:611: undefined reference to > `_imp__fribidi_get_bidi_types’ > > even though it's linking against -lfribdi in the proper order. > > Applying this patch (from the VLC people): > > +++ fribidi/lib/fribidi-common.h 2008-02-04 21:32:25.000000000 +0000 > @@ -53,11 +53,7 @@ > > /* FRIBIDI_ENTRY is a macro used to declare library entry points. */ > #ifndef FRIBIDI_ENTRY > -# if (defined(WIN32)) || (defined(_WIN32_WCE)) > -# define FRIBIDI_ENTRY __declspec(dllimport) > -# else /* !WIN32 */ > # define FRIBIDI_ENTRY /* empty */ > -# endif /* !WIN32 */ > #endif /* !FRIBIDI_ENTRY */ > > seems to make it "now work" > > I suppose...maybe...with static libraries it shouldn't be exported > this way for windows? I'm leaning towards removing all those lines and just stick a fribidi.def file somewhere, like I do with my other, newer, projects. Will fix it eventually. behdfad > Thanks! > -roger- _______________________________________________ fribidi mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/fribidi