Am 16.12.2021 um 08:43 schrieb Jonas Hahnfeld:
Am Mittwoch, dem 15.12.2021 um 23:17 +0100 schrieb Michael Käppler:
Am 15.12.2021 um 19:26 schrieb Jonas Hahnfeld:
No, the static libfribidi.a should define them without the __imp_
prefix which is special to shared Dlls. The compiler generates
references to them if a function declaration is annotated with
__declspec(dllimport). For FriBiDi, this decision happens in fribidi-
common.h where FRIBIDI_ENTRY should be '#define'd away if
FRIBIDI_LIB_STATIC is defined, which is injected from
pkgconfig/fribidi.pc.
Hmm...I did understand the error differently. From checking with 'nm' I
can tell that the symbols are actually defined in libfribidi.a _without_
the __imp_ prefix. But libpango-1.0.a has references to the prefixed symbols.
Yes, so Pango's build was not aware that libfribidi was built
statically.
Could you share mingw/dependencies/log/pango-1.48.7.log and
mingw/dependencies/build/pango-1.48.7/meson-logs/meson-log.txt ? The
latter should show `-DFRIBIDI_LIB_STATIC` as part of the --cflags
returned by pkg-config-static.sh.
That is not the case. I think I found the related issue here:
https://github.com/fribidi/fribidi/issues/156
and see also
https://github.com/fribidi/fribidi/pull/151

Since we do not use the 'meson' build system for fribidi this fix
would not help, right?
I could fix it locally by manually patching fribidi.pc.in, adding
`-DFRIBIDI_LIB_STATIC` to cflags.

After recompiling fribidi and pango I could complete a LilyPond mingw
build successfully.

Interesting why it worked for you, though.

Btw, they fixed this in fribidi 10 days ago:
https://github.com/fribidi/fribidi/commit/859aa1bd9ecdf58957f5a7af747ae3b6bd418c1c

I would suggest patching `fribidi.pc.in` for now and then bumping
fribidi to 1.0.12 as soon as
it becomes available.
Thoughts?


I found https://gitlab.gnome.org/GNOME/pango/-/issues/301 but not sure
if this is related.
Pango switched to generating their *.pc files through meson afterwards.
In the generated pango.pc, fribidi is not mentioned.
I don't think this is related, it was closed more than three years ago
and I see fribidi listed as dependency now.


  • Problems with mingw... Michael Käppler
    • Re: Problems w... Jonas Hahnfeld via Discussions on LilyPond development
      • Re: Proble... Michael Käppler
        • Re: Pr... Jonas Hahnfeld via Discussions on LilyPond development
          • Re... Michael Käppler
            • ... Jonas Hahnfeld via Discussions on LilyPond development
              • ... Michael Käppler
                • ... Jonas Hahnfeld via Discussions on LilyPond development

Reply via email to