I wanted to try out one last thing: what if i downgrade or upgrade harfbuzz manually. I've compiled 8.2.1, 8.3.1 and 8.5.0 and copied only the problematic library (libharfbuzz.so), replacing the one in my system. Well, still crashed, but differently. It did not matter if i downgraded to 8.2.1 or upgraded it, crash:Program received signal SIGFPE, Arithmetic exception.
0x000001a218b856fb in hb_font_funcs_set_glyph_shape_func () from /usr/local/lib/libharfbuzz.so.18.7
(gdb) step
Single stepping until exit from function hb_font_funcs_set_glyph_shape_func,
which has no line number information.
Program received signal SIGFPE, Arithmetic exception.
[Switching to thread 410223]
0x000001a26851d0ae in FcCompare (pat=0x1a213e6f820, fnt=0x1a2d79268c8, value=0x1a2da896c08, result=0x1a2a3d24e98, data=0x1a2a3d24df8)
at /usr/xenocara/lib/fontconfig/src/../../../dist/fontconfig/src/fcmatch.c:645
645 /usr/xenocara/lib/fontconfig/src/../../../dist/fontconfig/src/fcmatch.c: No such file or directory.
in /usr/xenocara/lib/fontconfig/src/../../../dist/fontconfig/src/fcmatch.c
Current language: auto; currently minimal
(gdb) step
[FORMS.PP] ExceptionOccurred
Program received signal SIGFPE, Arithmetic exception.
[Switching to thread 557081]
_libc_strlcpy (dst=Variable "dst" is not available.
) at /usr/src/lib/libc/string/strlcpy.c:29
29 /usr/src/lib/libc/string/strlcpy.c: No such file or directory.
in /usr/src/lib/libc/string/strlcpy.c
(gdb) step
[FORMS.PP] ExceptionOccurred
[FORMS.PP] ExceptionOccurred
Sender=EDivByZero
Exception=Division by zero
Stack trace:
Program received signal SIGFPE, Arithmetic exception.
[Switching to thread 410223]
_thread_sys_write () at /tmp/-:3
3 /tmp/-: No such file or directory.
in /tmp/-
Current language: auto; currently asm
(gdb) step
Program received signal SIGFPE, Arithmetic exception.
[Switching to thread 557081]
_thread_sys_read () at /tmp/-:3
3 /tmp/-: No such file or directory.
in /tmp/-
(gdb) step
$000001A29D934E10
$000001A29D998D5D
$000001A29D9971C1
$000001A29D99737D
$000001A2A2891F93
$000001A2A28C220C
$000001A2A28C29E0
$000001A2A28C1CD1
$000001A2A28C127F
$000001A2A28C0B85
$000001A2A28C06F2
$000001A2A28C0255
$000001A00A46707D
$000001A00A466F40
$000001A00A44201A
$000001A00A440E83
Die: DW_TAG_set_type (abbrev = 36, offset = 1173321)
has children: FALSE
attributes:
DW_AT_name (DW_FORM_string) string: "TCOMPONENTSTATE"
DW_AT_byte_size (DW_FORM_data2) constant: 4
DW_AT_type (DW_FORM_ref4) constant ref: 1173344 (adjusted)
Dwarf Error: Cannot find type of die [in module /root/project1-gtk2]
If i done a full install (gmake install), then it was the same as before: the mults_changed() function. (Did not try this with upgrade too, but i doubt it would be different.) Something else too got wrong, besides harfbuzz. Or it is not harfbuzz at all, it is just "happening" in harfbuzz.
Any ideas how to build Qt5 apps with Lazarus 2.2.6? Or how to make libQt5Pas work? Currently i'd be content with that as a workaround.