Closed lopho closed 7 years ago
Thanks a lot for this. If think the same should be done for Poco library which links by default to it's own version of libpcre (among others) and clash when linking ofApp dynamically to Gstreamer (with lots of duplicate symbol from libpcre)
This isn't one of my use cases, and I haven't worked with gstreamer yet. So take my comment with a grain of salt.
of has a cmake flag "POCO_UNBUNDLED". As far as I understand this should link poco against system libraries, but I'm not sure.
Freeimage is compiled directly into openframeworks.so, but Poco is linked dynamically, so hiding Poco's symbols should make them unusable for openframeworks. But: If all of Poco's public API is treated with a macro defining them as "visible" in the source it should work though.
I was referring to this: https://github.com/ofnode/of/issues/5 and in the case where OF_STATIC=ON
This enables linking of other libraries that are built against different versions of libjpeg or libjpeg-turbo. GCC exports symbols visible by default. Setting symbol visibility to hidden avoids conflicts with libraries built against, for example, system libraries.
Actually, it is set in the make file of the freeimage subdir, which is not used by the cmake build. https://github.com/ofnode/of/blob/master/src/freeimage/Makefile.gnu#L18