We are about to switch to a new forum software. Until then we have removed the registration on this forum.
SOMEONE PLEASE HELP ME. I'm a complete newb to Processing and I have ZERO JAVA experience. This 9DOF Sparkfun sketch (https://github.com/Razor-AHRS/razor-9dof-ahrs/wiki/Tutorial#testing-the-tracker) ran just fine in Processing v3.2.1 when on Windows 7, HOWEVER, my organization recently pushed the Windows 10 upgrade onto my workstation. They also have instituted an IT policy that NOTHING can be loaded or ran from a TEMP directory. Here is the full error message I get now using v3.3.6 (same error happens on v3.2.1):
A library used by this sketch is not installed properly
java.lang.UnsatisfiedLinkError: C:\Users\LawlerMA\AppData\Local\Temp\jogamp_0000\file_cache\jln2242143106356340675\jln240472690072993228\natives\windows-amd64\gluegen-rt.dll: Access is denied
at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824) at java.lang.Runtime.load0(Runtime.java:809) at java.lang.System.load(System.java:1086) at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:603) at com.jogamp.common.jvm.JNILibLoaderBase.access$000(JNILibLoaderBase.java:63) at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(JNILibLoaderBase.java:106) at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(JNILibLoaderBase.java:487) at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(DynamicLibraryBundle.java:421) at com.jogamp.common.os.Platform$1.run(Platform.java:317) at java.security.AccessController.doPrivileged(Native Method) at com.jogamp.common.os.Platform.(Platform.java:287) at com.jogamp.nativewindow.NativeWindowFactory$2.run(NativeWindowFactory.java:185) at java.security.AccessController.doPrivileged(Native Method) at com.jogamp.nativewindow.NativeWindowFactory.(NativeWindowFactory.java:182) at com.jogamp.newt.NewtFactory$1.run(NewtFactory.java:68) at java.security.AccessController.doPrivileged(Native Method) at com.jogamp.newt.NewtFactory.(NewtFactory.java:65) at processing.opengl.PSurfaceJOGL.initIcons(PSurfaceJOGL.java:498) at processing.opengl.PSurfaceJOGL.initFrame(PSurfaceJOGL.java:134) at processing.core.PApplet.initSurface(PApplet.java:10889) at processing.core.PApplet.runSketch(PApplet.java:10776) at processing.core.PApplet.main(PApplet.java:10476) A library relies on native code that's not available. Or only works properly when the sketch is run as a 32-bit application.
I came across this post in another forum: forum.jogamp.org/dll-quot-Access-is-denied-quot-vs-quot-Can-t-load-library-quot-td4034197.html
Will someone please help me get this sorted out to NOT use the automatic JAR extraction to a TEMP folder... but instead manually specify where the gluegen-rt.dll resides using this command:
System.setProperty("jogamp.gluegen.UseTempJarCache", "false") //WHERE DO I TYPE THIS???
Answers
Surely somebody has experienced this same issue on Windows 10... somebody throw me a bone please.
Hello
no the natives\windows-amd64\gluegen-rt.dll is in the processing folder itself.
It is packed like a zip archive to a *.jar file.
So the error message comes from Processing can not access this file. Besource you only have limited user rights for a given folder.
https://winaero.com/blog/how-to-take-ownership-and-get-full-access-to-files-and-folders-in-windows-10/
https://github.com/processing/processing/issues/5374#issuecomment-358474312
So if you read my full post... I stated the IT policy does not allow for files to be extracted to and loaded from "temp" folders. It is not a matter of me granting myself full rights to a temp folder under my user directory path. So according to your second link, I would need to download and compile JOGL so as not to do this auto-jar extraction... is that right?
@mlawler626
ok. help me. so what is your processing.exe installation folder ? Processing.exe is located in a "temp" folder ?
actually its very easy. u just need the change the user rights to the installation folder of your processing.exe
Also not totaly happy w/ the first link i shared, just look around what could work for you: https://www.google.de/search?q=windows+10+file+permissions
gluegen unpacked
http://www.mediafire.com/file/d2mata32x09h34e/work.zip
When their no way for you to place the folder with processing.exe into an other directory like
shell:UsersFilesFolder
C:\Users \ [yourname] \ Then their is not much you can do.
It has nothing to do with where I extracted Processing 3.3.6 [C:\users\myusername\Processing 3.3.6\ ]...
The issue is, when I try to run the Sparkfun AHRS sketch (that worked just fine in Win7)... it ERRORS because java is trying to auto-extract the .jar file for gluegen-rt.dll to a TEMP folder in my "user\appdata" path. The IT policy prevents this because this a common behavior of viruses/Trojans-- nothing can be temporarily extracted, ran, or loaded from a "temp" folder.
The
%TEMP%
path is the official folder where all Windows apps are advised to have their temporary stuff. :-\"@mlawler626 does this work for you ?
http://www.mediafire.com/file/d2mata32x09h34e/work.zip
Edit: i commented deprecated, questionable code
https://pastebin.com/raw/vnWt5YSq
Edit 2: Try to save the scetch in an other location, reopen and rerun it again.
https://forum.processing.org/one/topic/processing-temporary-files-are-they-really-temporary.html
Edit 3: Their is just something wrong, their should be no temp files directories included https://github.com/Razor-AHRS/razor-9dof-ahrs/tree/master/Processing