Comment 0 for bug 1838740

Revision history for this message
Reguel Wermelinger (ivy-rew) wrote :

When running an SWT ui with an embedded AWT/Swing component the library loading process fails as soon as the user clicks on a JComboBox.

The error visible is: Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!

running the JVM with LD_DEBUG=all exposes the /lib/libjawt.so as the source of the problem.
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/bin/java [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/bin/../lib/jli/libjli.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libc.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libz.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib64/ld-linux-x86-64.so.2 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libm.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libgcc_s.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libawt_xawt.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libawt.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXext.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libX11.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXrender.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXtst.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXi.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjava.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libxcb.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libverify.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXau.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXdmcp.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libbsd.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/librt.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libXinerama.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libselinux.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libresolv.so.2 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libmount.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/x86_64-linux-gnu/libffi.so.6 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libpcre.so.3 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libblkid.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/lib/x86_64-linux-gnu/libuuid.so.1 [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/home/rew/.swt/lib/linux/x86_64/libswt-awt-gtk-4926r21.so [0]
      3248: symbol=JAWT_GetAWT; lookup in file=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so [0]
Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!

A quick smoke the revealed that the package from adoptOpenJdk does not have the issues. I could also use the libjawt.so and run my SWT/AWT ui without any issues.