You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The "-fvisibility=hidden" (see CMakeLists.txt#L77) in CMakeLists.txt causes undefined symbols errors when using this library as shared object.
It's not a problem when using it as a static library because visibility settings doesn't affect that by design.
There are multiple solutions for this problem:
Just remove "-fvisibility=hidden". We are currently using this approach as a workaround because we currently don't have many symbols to be considered private, this may be a viable option.
Keep "-fvisibility=hidden" and manually annotate symbols intended to be public with: __attribute__((visibility("default"))), however, this will require a significant amount of effort.
Replace "-fvisibility=hidden" with "-fvisibility=default" and manually annotate symbols intended to be private with __attribute__((visibility("hidden")))
The text was updated successfully, but these errors were encountered:
The
"-fvisibility=hidden"
(see CMakeLists.txt#L77) inCMakeLists.txt
causes undefined symbols errors when using this library as shared object.It's not a problem when using it as a static library because visibility settings doesn't affect that by design.
There are multiple solutions for this problem:
"-fvisibility=hidden"
. We are currently using this approach as a workaround because we currently don't have many symbols to be considered private, this may be a viable option."-fvisibility=hidden"
and manually annotate symbols intended to be public with:__attribute__((visibility("default")))
, however, this will require a significant amount of effort."-fvisibility=hidden"
with"-fvisibility=default"
and manually annotate symbols intended to be private with__attribute__((visibility("hidden")))
The text was updated successfully, but these errors were encountered: