Skip to content

extract,writeback: Use export_dynamic explicitly

We used to get that implicitly through GModule .pc file defining -Wl,--export-dynamic so that modules could reference symbols in the main executable.

With newer GLib including glib@11bdd6fc the gmodule .pc file will no longer define this compiler flag in a way that works for us, resulting in errors like:

.../tracker-extract-3: symbol lookup error: .../tracker-miners/build/tests/functional-tests/../../src/tracker-extract/libextract-gstreamer.so: undefined symbol: tracker_main_get_readonly_connection

When modules fail to load at runtime, unable to access symbols from the main executable.

Using export_dynamic in meson (available since 0.45), we can explicitly specify this behavior in our own executables (tracker-extract and tracker-writeback require this) without implicitly relying on glib behavior.

Merge request reports