<AWT Dev> libfontmanager.so: undefined symbol: hb_font_destroy in openjdk17~14

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

<AWT Dev> libfontmanager.so: undefined symbol: hb_font_destroy in openjdk17~14

mc36
hi,
just upgraded from openjdk17~11 to openjdk17~14 (https://packages.debian.org/sid/main/openjdk-17-jdk) on my debian sid. i quickly noticed that something is wrong so i ended up with the below sample app.
i'm not a big c coder so all i was able to do is that i got the libharfbuzz sources  (https://packages.debian.org/unstable/libharfbuzz-dev) and checked that i have that version and the function is there.
i would appreciate some idea what else should i try?
thanks,
csaba


mc36@noti:~$ cat a.java

import java.awt.Graphics2D;
import java.awt.image.BufferedImage;

public class a {

    public static void main(String[] args) throws Exception {
        BufferedImage img = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB);
        Graphics2D g2d = img.createGraphics();
    }

}


mc36@noti:~$ javac a.java
mc36@noti:~$ java a
Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-17-openjdk-amd64/lib/libfontmanager.so: /usr/lib/jvm/java-17-openjdk-amd64/lib/libfontmanager.so: undefined symbol: hb_font_destroy
        at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
        at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:383)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:227)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:169)
        at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:310)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:280)
        at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2392)
        at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:808)
        at java.base/java.lang.System.loadLibrary(System.java:1893)
        at java.desktop/sun.font.FontManagerNativeLibrary$1.run(FontManagerNativeLibrary.java:57)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:312)
        at java.desktop/sun.font.FontManagerNativeLibrary.<clinit>(FontManagerNativeLibrary.java:32)
        at java.desktop/sun.java2d.xr.XRSurfaceData.initXRSurfaceData(XRSurfaceData.java:104)
        at java.desktop/sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:122)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:312)
        at java.desktop/sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:59)
        at java.desktop/sun.awt.PlatformGraphicsInfo.createGE(PlatformGraphicsInfo.java:36)
        at java.desktop/java.awt.GraphicsEnvironment$LocalGE.createGE(GraphicsEnvironment.java:93)
        at java.desktop/java.awt.GraphicsEnvironment$LocalGE.<clinit>(GraphicsEnvironment.java:84)
        at java.desktop/java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:106)
        at java.desktop/java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1181)
        at a.main(a.java:9)
mc36@noti:~$