On Tue, 14 May 2024 at 17:12:29 +0100, Simon McVittie wrote:
> I'm testing a patch to make g-ir-scanner explicitly disable
> -Wl,--as-needed, so that the SONAMEs can be extracted reliably.

This successfully mitigates the libkkc issue, and we need it anyway for
ibus-anthy. After uploading that patch, I'll downgrade this bug to non-RC.

> However, I think libkkc is also invoking g-ir-scanner wrong

I still think this.

> Like this pseudo-patch (untested):
> 
> -libmarisa_glib_la_LIBADD = $(GIO_LIBS) $(MARISA_LIBS)
> +libmarisa_glib_la_LIBADD = $(GIO_LIBS) $(MARISA_LIBS) 
> $(MARISA_GLIB_STATIC_DEPENDENCIES)
> ...
> -Marisa_gir_SCANNERFLAGS = --pkg-export=marisa-glib --pkg=marisa 
> --namespace=Marisa $(MARISA_GLIB_STATIC_DEPENDENCIES)
> +Marisa_gir_SCANNERFLAGS = --pkg-export=marisa-glib --pkg=marisa 
> --namespace=Marisa

Unfortunately this doesn't work, because -lstdc++ gets stripped from the
linker arguments (possibly by libtool), and then the link fails because
the static library needs to use symbols from it.

Possibly adding -Wl,--copy-dt-needed-entries to the Marisa_gir_CFLAGS
would help?

I don't know what the correct solution would be, but I'm reasonably
sure that making Marisa.gir claim to be a GObject binding for libstdc++
is not it.

    smcv

Reply via email to