UnsatisfiedLinkError in Processing with Apple Silicon

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view

UnsatisfiedLinkError in Processing with Apple Silicon

Hi, I know there have been posts on this before, but I have tried them all and unfortunately it hasn't been working for me.

I originally had a repo for Windows that was working perfectly and I assumed that all I had to do was clone the repo and change the x86 jars to ARM, and that worked for Processing but IntelliJ isn't recognizing Jogamp.
I am sure that Processing is consistent with their JOGL version as Processing itself does work, but not with IntelliJ.

java.lang.UnsatisfiedLinkError: Can't load library: /Users/Ailun/Documents/GitHub/Tut/natives/macosx-universal/gluegen_rt
        at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393)
        at java.base/java.lang.Runtime.load0(Runtime.java:755)
        at java.base/java.lang.System.load(System.java:1953)
        at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:625)
        at com.jogamp.common.jvm.JNILibLoaderBase.access$000(JNILibLoaderBase.java:64)
        at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(JNILibLoaderBase.java:107)
        at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(JNILibLoaderBase.java:488)
        at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(DynamicLibraryBundle.java:427)
        at com.jogamp.common.os.Platform$1.run(Platform.java:321)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at com.jogamp.common.os.Platform.<clinit>(Platform.java:290)
        at com.jogamp.nativewindow.NativeWindowFactory$1.run(NativeWindowFactory.java:239)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at com.jogamp.nativewindow.NativeWindowFactory.<clinit>(NativeWindowFactory.java:236)
        at com.jogamp.newt.NewtFactory$1.run(NewtFactory.java:69)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at com.jogamp.newt.NewtFactory.<clinit>(NewtFactory.java:66)
        at processing.opengl.PSurfaceJOGL.initIcons(PSurfaceJOGL.java:475)
        at processing.opengl.PSurfaceJOGL.initFrame(PSurfaceJOGL.java:147)
        at processing.core.PApplet.initSurface(PApplet.java:10537)
        at processing.core.PApplet.runSketch(PApplet.java:10443)
        at processing.core.PApplet.main(PApplet.java:10187)
        at Main.main(Main.java:48)

There didn't exist a natives/macosx-universal folder so I created it and added the gluegen-rt.jar to it, however it has not fixed the issue.
I have added the folder to the classpath too (I'm using IntelliJ with Gradle so I also added it to the gradle.build), but that didn't work either.

I would greatly appreciate any help!
Reply | Threaded
Open this post in threaded view

Re: UnsatisfiedLinkError in Processing with Apple Silicon


Try to run a simple example with JOGL under OSX first before fixing your more complicated problem.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view

Re: UnsatisfiedLinkError in Processing with Apple Silicon

In reply to this post by ailuniv

If this is not already the case, you should use this version to have JOGL working on Apple Silicon.

I have reference a couple of solutions here for the UnsatisfiedLinkError that becomes frequently discussed.

Let me know if this helps.