LWJGL Forum

Programming => Lightweight Java Gaming Library => Topic started by: tomera on January 01, 2017, 22:28:58

Title: OpenCL.dll not found in system paths
Post by: tomera on January 01, 2017, 22:28:58
I tried to run OpenCL code and I got this error:

[LWJGL] Version: 3.1.1 build 16
[LWJGL] OS: Windows 10 v10.0
[LWJGL] JRE: 1.8.0_111 amd64
[LWJGL] JVM: Java HotSpot(TM) 64-Bit Server VM v25.111-b14 by Oracle Corporation
[LWJGL] Loading library (system): lwjgl
[LWJGL] Found at: C:\Users\IMZYZZ~1\AppData\Local\Temp\lwjglImZyzzBrah\3.1.1-build-16\lwjgl.dll
[LWJGL] Loaded from org.lwjgl.librarypath: C:\Users\IMZYZZ~1\AppData\Local\Temp\lwjglImZyzzBrah\3.1.1-build-16\lwjgl.dll
[LWJGL] MemoryUtil accessor: MemoryAccessorUnsafe
[LWJGL] Loading library: OpenCL
[LWJGL] OpenCL.dll not found in org.lwjgl.librarypath=C:\Users\IMZYZZ~1\AppData\Local\Temp\lwjglImZyzzBrah\3.1.1-build-16
[LWJGL] OpenCL.dll not found in java.library.path=C:\Program Files\Java\jre1.8.0_111\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Program Files/Java/jre1.8.0_111/bin/server;C:/Program Files/Java/jre1.8.0_111/bin;C:/Program Files/Java/jre1.8.0_111/lib/amd64;c:\programdata\oracle\java\javapath;c:\windows\system32;c:\windows;c:\windows\system32\wbem;c:\windows\system32\windowspowershell\v1.0\;c:\windows\system32\config\systemprofile\.dnx\bin;c:\program files\microsoft dnx\dnvm\;c:\program files\microsoft sql server\120\tools\binn\;c:\program files (x86)\windows kits\10\windows performance toolkit\;c:\program files (x86)\nodejs\;c:\program files (x86)\skype\phone\;c:\program files (x86)\easeus\todo backup\bin;c:\program files\java\jdk1.8.0_66\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Users\ImZyzzBrah\AppData\Roaming\npm;C:\Users\ImZyzzBrah\AppData\Local\Programs\Python\Python35-32;C:\Users\ImZyzzBrah\AppData\Local\Programs\Python\Python35-32\Scripts;C:\Users\ImZyzzBrah\Desktop;%USERPROFILE%\AppData\Local\Microsoft\WindowsApps;;C:\Users\ImZyzzBrah\eclipse;;.
[LWJGL] OpenCL.dll not found in system paths
[LWJGL] Failed to load a library. Possible solutions:
a) Set -Djava.library.path or -Dorg.lwjgl.librarypath to the directory that contains the shared libraries.
b) Add the JAR(s) containing the shared libraries to the classpath.
Exception in thread "main" java.lang.UnsatisfiedLinkError: Failed to locate library: OpenCL.dll
at org.lwjgl.system.Library.loadNative(Library.java:207)
at org.lwjgl.system.Library.loadNative(Library.java:251)
at org.lwjgl.opencl.CL.create(CL.java:54)
at org.lwjgl.opencl.CL.<clinit>(CL.java:43)
at org.lwjgl.opencl.CL10.nclGetPlatformIDs(CL10.java:394)
at org.lwjgl.opencl.CL10.clGetPlatformIDs(CL10.java:417)
at gpu.Laplace2D.main(Laplace2D.java:85)


The HelloWorld code does work. Its seems like OpenCL.dll is missing I also tried to search him in the jars and didnt find.
The same jars work on other PC, so I guess its there somewhere but windows/eclipse canot find him.
Title: Re: OpenCL.dll not found in system paths
Post by: spasi on January 01, 2017, 22:46:30
OpenCL.dll is not provided by LWJGL. It is usually installed by GPU drivers and other OpenCL runtimes (e.g. the Intel SDK for OpenCL (https://software.intel.com/en-us/intel-opencl)). The interesting line in the above output is:

OpenCL.dll not found in system paths

This means there's no OpenCL runtime installed on that system.
Title: Re: OpenCL.dll not found in system paths
Post by: tomera on January 02, 2017, 10:05:05
Ok, thanks. Maybe the error can be more informative about this by the error I thought the problem is with my jars.

[LWJGL] Failed to load a library. Possible solutions:
    a) Set -Djava.library.path or -Dorg.lwjgl.librarypath to the directory that contains the shared libraries.
    b) Add the JAR(s) containing the shared libraries to the classpath.
Title: Re: OpenCL.dll not found in system paths
Post by: spasi on January 02, 2017, 11:09:48
You make a good point, although technically the message LWJGL prints is not wrong.
Title: Re: OpenCL.dll not found in system paths
Post by: spasi on January 06, 2017, 18:09:15
The error message has been improved (https://github.com/LWJGL/lwjgl3/blob/9de50161946cfc4b39e378e566fe65d58c6289e9/modules/core/src/main/java/org/lwjgl/system/Library.java#L299) in LWJGL 3.1.2 build #2. Thanks!