Gluegen native library loading error may happen for several reasons.
Hardware not supported
You are running JOGL on a hardware that is not supported. Is this is macOS M1, use this release instead.
Inappropriate permissions defined
There are wrongly defined permission schemes preventing the libraries to be loaded.
Using -Djogamp.debug.IOUtil VM argument allows showing such issue in console :
IOUtil.testDirExec: </tmp/jogamp_exe_tst6252795205786161366.sh>: Caught IOException: Cannot run program "/tmp/jogamp_exe_tst6252795205786161366.sh": error=13, Permission denied
The DEB packager that I used did NOT set the correct permissions on the jre/lib/jspanwhelper. After installation the permissions were 644 (RW,R,R). A chmod 755 /jre/lib/jspanwhelper fixed the JOGL native lib loading issue completely.
How to debug further
If you did not find a solution above, try enabling more logs by using the JVM arguments -Djogamp.debug.JarUtil -Djogamp.debug.JNILibLoader -Djogamp.debug.IOUtil. They will print lot of information on the loading process.
If you experienced
UnsatisfiedLinkError
on other JOGL library than Gluegen see : https://github.com/jzy3d/jogl/issues/29Gluegen native library loading error may happen for several reasons.
Hardware not supported
You are running JOGL on a hardware that is not supported. Is this is macOS M1, use this release instead.
Inappropriate permissions defined
There are wrongly defined permission schemes preventing the libraries to be loaded. Using
-Djogamp.debug.IOUtil
VM argument allows showing such issue in console :IOUtil.testDirExec: </tmp/jogamp_exe_tst6252795205786161366.sh>: Caught IOException: Cannot run program "/tmp/jogamp_exe_tst6252795205786161366.sh": error=13, Permission denied
A developer reported
How to debug further
If you did not find a solution above, try enabling more logs by using the JVM arguments
-Djogamp.debug.JarUtil -Djogamp.debug.JNILibLoader -Djogamp.debug.IOUtil
. They will print lot of information on the loading process.