FS#71680 - [freetype2] Freetype 2.11 introduces breaking compatibility
Attached to Project:
Arch Linux
Opened by Mika Norén (SysGhost) - Sunday, 01 August 2021, 04:34 GMT
Last edited by Jan Alexander Steffens (heftig) - Monday, 13 September 2021, 08:04 GMT
Opened by Mika Norén (SysGhost) - Sunday, 01 August 2021, 04:34 GMT
Last edited by Jan Alexander Steffens (heftig) - Monday, 13 September 2021, 08:04 GMT
|
Details
Description:
Freetype 2.11 introduces some changes that are breaking compatibility. Valve's Steam client is one application that doesn't work with Freetype 2.11.0. It relies on 2.10 or lower. It renders all black screens, with the error: ./steamwebhelper: symbol lookup error: /usr/lib/libfreetype.so.6: undefined symbol: hb_ot_tags_from_script_and_language Looking around the web, there seem to be some applications that have the same problem. Undefined symbols. This isn't Freetype's own fault per see. Just that changes in the new rendering engine are breaking compatibility. I'd suggest that Freetype 2.11 doesn't pass testing until these compatibility issues have been addressed. Although not sure if this is upstream on FreeType, or the other applications not compatible with FreeType 2.11 Steps to reproduce: Update to the latest freetype package in testing. Run applications that still rely on freetype 2.10 (Steam, Plex, etc...) Watch as the applications fail to render due to freetype symbol errors. |
This task depends upon
Closed by Jan Alexander Steffens (heftig)
Monday, 13 September 2021, 08:04 GMT
Reason for closing: Not a bug
Additional comments about closing: proprietary apps shipping ancient harfbuzz libs, not a freetype bug
Monday, 13 September 2021, 08:04 GMT
Reason for closing: Not a bug
Additional comments about closing: proprietary apps shipping ancient harfbuzz libs, not a freetype bug
https://github.com/ValveSoftware/steam-for-linux/issues/7935#issuecomment-890558546
heftig commented 3 days ago
I suspect this is the fault of steam shipping a libharfbuzz that is too old. hb_ot_tags_from_script_and_language was introduced in harfbuzz 2.0.0 in 2018, but the steam runtime contains harfbuzz 0.9.35.
Either steam needs to use system harfbuzz or its own freetype.
Cannot load library /opt/activitywatch/PyQt5/Qt/plugins/platforms/libqxcb.so: (/usr/lib/libfreetype.so.6: undefined symbol: hb_ot_tags_from_script_and_language).
Wolfram/SystemFiles/FrontEnd/Binaries/Linux-x86-64/Mathematica: symbol lookup error: /usr/lib/libfreetype.so.6: undefined symbol: hb_ot_tags_from_script_and_language
https://github.com/ValveSoftware/steam-for-linux/issues/7935#issuecomment-910080165
I managed to run it using the trick as for libfreetype.so.6, i.e. force Mathematica to use the system version of the harfbuzz library
(see the Wiki entry for Mathematica):
cd <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64
mv libharfbuzz.so.0 libharfbuzz.so.0.old