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
Building libglibutil 1.0.74 with LTO and -fvisibility=hidden (pre-requisite of CFI which I filed another issue about already and skipped all broken tests for the moment) I see libgbinder 1.1.35 failing to build due to various undefined symbols from libglibutil which were not marked as part of public API with a __attribute__((visibility("default"))) macro or similar:
ld: error: undefined symbol: gutil_log
>>> referenced by test_binder.c:367 (./unit/unit_bridge/../common/test_binder.c:367)
>>> lto.tmp:(test_binder_node_unref.llvm.18437551932447681344)
>>> referenced by test_binder.c:336 (./unit/unit_bridge/../common/test_binder.c:336)
>>> lto.tmp:(test_binder_node_unref.llvm.18437551932447681344)
>>> referenced by gbinder_client.c:210 (./src/gbinder_client.c:210)
>>> lto.tmp:(gbinder_client_transact_sync_reply2)
>>> referenced 251 more times
Which for example this could be a naïve fix to:
--- a/include/gutil_log.h+++ b/include/gutil_log.h@@ -125,6 +125,7 @@ gutil_log_description(
int count); /* Number of known modules */
/* Logging function */
+__attribute__((visibility("default")))
void
gutil_log(
const GLogModule* module, /* Calling module (NULL for default) */
Building libglibutil 1.0.74 with LTO and
-fvisibility=hidden(pre-requisite of CFI which I filed another issue about already and skipped all broken tests for the moment) I see libgbinder 1.1.35 failing to build due to various undefined symbols from libglibutil which were not marked as part of public API with a__attribute__((visibility("default")))macro or similar:Which for example this could be a naïve fix to:
A bunch more can be seen in the full build log: https://paste.c-net.org/x0nhhzxganl3
https://clang.llvm.org/docs/LTOVisibility.html and https://gcc.gnu.org/wiki/Visibility could be of interest
The text was updated successfully, but these errors were encountered: