On 2026-02-23 15:54, Jean-Max Redonnet wrote:
Hi Drew!

For the moment I do not have enough space on my disk to install a virtual machine running forky. Sorry.

Getting an example reproducing the problem is quite easy: Once vtk9 and libvtk9-java are properly installed with dependencies, just grab any java example from https://examples.vtk.org/site/Java/

Thanks Jean-Max. https://examples.vtk.org/site/Java/ is helpful.

Kitware seems to be treating java support as deprecated.
The doc link http://www.vtk.org/Wiki/VTK/Tutorials/JavaEnvironmentSetup
for setting up java for VTK is broken.

Compile it, run it and admire the crash... At least if your computer acts exactly as mine.

Yeah, compiling it is quite the issue, before even thinking about libucs. There are bigger problems here than libvtk9-java. java doesn't even know where it's own libraries (libjawt.so) are,

java.lang.UnsatisfiedLinkError: /usr/lib/x86_64-linux-gnu/java/vtk-Linux-x86_64/libvtkRenderingCoreJava.so: libjawt.so: cannot open shared object file: No such file or directory

which doesn't bode well for getting libvtk9-java to operate painlessly.

But with some stubborness, your CylinderExample.java can be made to display a red cylinder, fully rotatable.

$ LD_LIBRARY_PATH=/usr/lib/jvm/java-21-openjdk-amd64/lib/:/usr/lib/x86_64-linux-gnu/java/vtk-Linux-x86_64/ java -cp "/usr/share/java/vtk9.jar" CylinderExample.java java.lang.UnsatisfiedLinkError: /usr/lib/x86_64-linux-gnu/java/vtk-Linux-x86_64/libvtkRenderingMatplotlibJava.so: /usr/lib/x86_64-linux-gnu/java/vtk-Linux-x86_64/../../libvtkWrappingPythonCore3.13-9.5.so.1: undefined symbol: PyExc_ValueError
        at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:331) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:197) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:139) at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:259) at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:251)
        at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2451)
        at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:916)
        at java.base/java.lang.System.loadLibrary(System.java:2063)
        at vtk.vtkNativeLibrary.LoadLibrary(vtkNativeLibrary.java:255)
at vtk.vtkNativeLibrary.LoadAllNativeLibraries(vtkNativeLibrary.java:192)
        at CylinderExample.<clinit>(CylinderExample.java:17)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:536)
        at java.base/java.lang.Class.forName(Class.java:515)
at jdk.compiler/com.sun.tools.javac.launcher.Main.execute(Main.java:432)
        at jdk.compiler/com.sun.tools.javac.launcher.Main.run(Main.java:208)
        at jdk.compiler/com.sun.tools.javac.launcher.Main.main(Main.java:135)
vtkRenderingMatplotlibJava not loaded

I'm not sure what to make of the undefined PyExc_ValueError. Looks like libvtkWrappingPythonCore3.13-9.5.so.1 needs to link to libpython3.13.so. But it's not preventing your cylinder from displaying.

Looks like the libucs crash has been resolved.

Reply via email to