developersu/ns-usbloader

Loading library prism_es2 from resource failed: java.lang.UnsatisfiedLinkError:

Krish9993 opened this issue · 3 comments

I currently have java 20.0.1 Java(TM) SE Runtime Environment (build 20.0.1+9-29)
Java HotSpot(TM) 64-Bit Server VM (build 20.0.1+9-29, mixed mode, sharing), I am trying to Okta with was integration, I am currently getting this issue, can someone let me know what the issue is, I have installed jdk which supports arm64,

Loading library prism_es2 from resource failed: java.lang.UnsatisfiedLinkError: /Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib: dlopen(/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib, 0x0001): tried: '/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (no such file), '/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) java.lang.UnsatisfiedLinkError: /Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib: dlopen(/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib, 0x0001): tried: '/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (no such file), '/Users/xxx/.openjfx/cache/12.0.1/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) 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/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2404) at java.base/java.lang.Runtime.load0(Runtime.java:817) at java.base/java.lang.System.load(System.java:2015) at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:205) at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:185) at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:157) at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:52) at com.sun.prism.es2.ES2Pipeline.lambda$static$0(ES2Pipeline.java:68) at java.base/java.security.AccessController.doPrivileged(AccessController.java:319) at com.sun.prism.es2.ES2Pipeline.<clinit>(ES2Pipeline.java:50) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:391) at java.base/java.lang.Class.forName(Class.java:382) at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:187) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:91) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124) at java.base/java.lang.Thread.run(Thread.java:1623) Loading library prism_sw from resource failed: java.lang.UnsatisfiedLinkError: /Users/xxx/cache/12.0.1/libprism_sw.dylib: dlopen(/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib, 0x0001): tried: '/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (no such file), '/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) java.lang.UnsatisfiedLinkError: /Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib: dlopen(/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib, 0x0001): tried: '/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (no such file), '/Users/xxx/.openjfx/cache/12.0.1/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) 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/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2404) at java.base/java.lang.Runtime.load0(Runtime.java:817) at java.base/java.lang.System.load(System.java:2015) at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:205) at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:185) at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:157) at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:52) at com.sun.prism.sw.SWPipeline.lambda$static$0(SWPipeline.java:42) at java.base/java.security.AccessController.doPrivileged(AccessController.java:319) at com.sun.prism.sw.SWPipeline.<clinit>(SWPipeline.java:41) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:391) at java.base/java.lang.Class.forName(Class.java:382) at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:187) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:91) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124) at java.base/java.lang.Thread.run(Thread.java:1623) Graphics Device initialization failed for : es2, sw Error initializing QuantumRenderer: no suitable pipeline found java.lang.RuntimeException: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found at com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:280) at com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:243) at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:260) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658) at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:1623) Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:94) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124) ... 1 more Exception in thread "main" java.lang.RuntimeException: No toolkit found at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:272) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267) at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158) at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658) at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:1623)

Are you using 'ns-usbloader-7.0-m1.jar'? It contains required libraries.
If so, it seems like you have already installed JavaFX/OpenJFX libraries somewhere.. maybe here /Users/xxx/.openjfx/cache/12.0.1/. (IDK what to do.. like remove that JDK, install another.. 17th maybe. Not sure.)

Similar problem trying to run it on an M1 Macbook.

Java version:

java --version
openjdk 11.0.14 2022-01-18
OpenJDK Runtime Environment Temurin-11.0.14+9 (build 11.0.14+9)
OpenJDK 64-Bit Server VM Temurin-11.0.14+9 (build 11.0.14+9, mixed mode)

Error log:

Jul 30, 2023 3:47:31 P.M. com.sun.javafx.application.PlatformImpl startup
WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @5a39699c'
Loading library prism_es2 from resource failed: java.lang.UnsatisfiedLinkError: /Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib: dlopen(/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib, 0x0001): tried: '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (no such file), '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))
java.lang.UnsatisfiedLinkError: /Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib: dlopen(/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib, 0x0001): tried: '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (no such file), '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_es2.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))
	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
	at java.base/java.lang.Runtime.load0(Unknown Source)
	at java.base/java.lang.System.load(Unknown Source)
	at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:217)
	at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:197)
	at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:138)
	at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:54)
	at com.sun.prism.es2.ES2Pipeline.lambda$static$0(ES2Pipeline.java:63)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at com.sun.prism.es2.ES2Pipeline.<clinit>(ES2Pipeline.java:52)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Unknown Source)
	at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:218)
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:92)
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
	at java.base/java.lang.Thread.run(Unknown Source)
Loading library prism_sw from resource failed: java.lang.UnsatisfiedLinkError: /Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib: dlopen(/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib, 0x0001): tried: '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (no such file), '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))
java.lang.UnsatisfiedLinkError: /Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib: dlopen(/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib, 0x0001): tried: '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (no such file), '/Users/lucas/.openjfx/cache/19.0.2.1+1/x86_64/libprism_sw.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))
	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)
	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)
	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)
	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
	at java.base/java.lang.Runtime.load0(Unknown Source)
	at java.base/java.lang.System.load(Unknown Source)
	at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:217)
	at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:197)
	at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:138)
	at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:54)
	at com.sun.prism.sw.SWPipeline.lambda$static$0(SWPipeline.java:43)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at com.sun.prism.sw.SWPipeline.<clinit>(SWPipeline.java:42)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Unknown Source)
	at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:218)
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:92)
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
	at java.base/java.lang.Thread.run(Unknown Source)
Graphics Device initialization failed for :  es2, sw
Error initializing QuantumRenderer: no suitable pipeline found
java.lang.RuntimeException: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
	at com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:283)
	at com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:253)
	at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:268)
	at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:291)
	at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:163)
	at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:659)
	at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:679)
	at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:95)
	at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
	... 1 more
Exception in thread "main" java.lang.RuntimeException: No toolkit found
	at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:280)
	at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:291)
	at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:163)
	at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:659)
	at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:679)
	at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
	at java.base/java.lang.Thread.run(Unknown Source)

@Krish9993 error says ...dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')) so he/she needs -m1 build (JAR file).

@yuplucas, your error says .dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')) so you have to use 'regular' jar, i.e. ns-usbloader-7.0.jar

It's exactly opposite error. I guess it's because you use JVM for amd64 on arm64 platform.. somehow.. I'm not good in these mac things. Anyway, give a try and please let me know if it helps ;)