Hashcat - Can't find OpenCL ICD loader library
#1
Hello,

I have following problem mit with hashcat, actually I start hashcat I got this error message:

Quote:ATTENTION! Can't find OpenCL ICD loader library

You're probably missing the "ocl-icd-libopencl1" package (Debian/Ubuntu) sudo apt-get install ocl-icd-libopencl1

After I had installed the packages, the error message remains.
What can i do to fix this problem ?


I used Ubuntu 16.04 on my laptop with
  • Kernel: x86_64 Linux 4.4.0-38-generic
  • CPU: Intel Core i5-3230M CPU @ 3.2GHz
  • GPU: AMD/ATI Whistler LE [Radeon HD 6610M/7610M
#2
That's strange. It looks for a file named "libOpenCL.so". Can you make sure that file does not exist on your system?
#3
find / libOpenCL.so
find: "libOpenCL.so": cant find file or directory ...
#4
I had installed ocl-icd-opencl-dev packages and now I had the libOpenCL.so, but the problem remains.


Quote:ll /usr/lib/x86_64-linux-gnu/ | fgrep "libOpenCL.so"                                                                                                               
15:01:44

lrwxrwxrwx  1 root root    18 Dez 18  2015 libOpenCL.so -> libOpenCL.so.1.0.0
lrwxrwxrwx  1 root root    16 Okt  7 23:50 libOpenCL.so.1 -> libOpenCL.so.1.2
    -rw-r--r--  1 root root   43K Dez 18  2015 libOpenCL.so.1.0.0
lrwxrwxrwx  1 root root    41 Okt  7 23:47 libOpenCL.so.1.2 -> /etc/alternatives/opencl-libOpenCL.so.1.2
#5
Interessting, maybe we should add that path to the search. If you symlink libOpenCL.so on /usr/lib hashcat should find it.
#6
Seeing a very similar issue, however I cant seem to find libOpenCL.so even using the dev install. See below:

I have tried both
ocl-icd-libopencl1 && ocl-icd-opencl-dev.

Note that today I have installed a new gtx 1070 and am running Linux Mint. I had this working on my old gtx 580 using legacy cudaHashcat. Here is the output from searching for the proper lib. It appears to me maybe nvida is renaming them in the new driver? I am on 375.20:

cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 375.20 Tue Nov 15 16:49:10 PST 2016
GCC version: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3


find / -iname '*OpenCL.so*'
/usr/lib/i386-linux-gnu/libnvidia-opencl.so.340.98
/usr/lib/i386-linux-gnu/libnvidia-opencl.so.1
/usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.340.98
/usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1

commands previsouly ran:

apt-get install ocl-icd-opencl-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
ocl-icd-opencl-dev is already the newest version

apt-get install ocl-icd-libopencl1
Reading package lists... Done
Building dependency tree
Reading state information... Done
ocl-icd-libopencl1 is already the newest version.
#7
There's something extremely broke in your setup. You write you're using 375.20 yet your symlinks point to 340.98. With latest NV drivers, you don't need to install an ICD anymore, the driver places it's on to /usr/lib/x86_64-linux-gnu/ anyway. So just purge everything that's related to nvidia driver and opencl, then install the nvidia driver via .run
#8
it was all looking so good in games, but I agree the driver version looked weird to me also, I'll try the full blow away and install driver only and see what happens.
#9
Resolved after removing all old nvidia drivers and files:
sudo apt-get purge $(dpkg -l | awk '$2~/nvidia/ {print $2}')
and reinstalling the new driver directly from nvidia.

Thanks for the help.
#10
You don't need to do all that subshell awk stuff. ''aptitude purge ~nnvidia''