Завдяки шановному Богу, я знайшов рішення за цим посиланням .
Це може статися при запуску sudo ldconfig після копіювання файлів cuDNN.
Після встановлення cuDNN
, копіювання вилучених файлів у
/usr/lib/cuda/lib64
та створення символьних посилань ситуація може піти не так із символьними посиланнями.
Тож іди /usr/local/cuda/lib64/
і біжи ls -lha libcudnn*
.
Ви повинні побачити дві символьні посилання (жирний трійник) та один єдиний файл. Щось на зразок цього:
/usr/local/cuda/lib64$ ls -lha libcudnn*
lrwxrwxrwx 1 root root 13 Dez 25 23:56 libcudnn.so -> libcudnn.so.5
lrwxrwxrwx 1 root root 17 Dez 25 23:55 libcudnn.so.5 -> libcudnn.so.5.1.5
-rwxr-xr-x 1 root root 76M Dez 25 23:27 libcudnn.so.5.1.5
Точна версія libcudnn.so.5.1.5 може бути для вас дещо іншою (можливо, libcudnn.so.5.1.10). У цьому випадку відповідно адаптуйте код
Якщо libcudnn.so
і libcudnn.so.5
не є посиланнями, то це причина, чому ви отримали цю помилку. Якщо це так, це потрібно зробити:
/usr/local/cuda/lib64$ sudo rm libcudnn.so
/usr/local/cuda/lib64$ sudo rm libcudnn.so.5
/usr/local/cuda/lib64$ sudo ln libcudnn.so.5.1.5 libcudnn.so.5
/usr/local/cuda/lib64$ sudo ln libcudnn.so.5 libcudnn.so
Run sudo ldconfig again and there should be no errors
Після запуску
ls -lha libcudnn*
в /usr/local/cuda/lib64
і бачимо:
breeze@breeze:/usr/local/cuda/lib64$ ls -lha libcudnn*
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7.0.5
-rw-r--r-- 1 root root 268M آوریل 15 12:03 libcudnn_static.a
Я повинен був зробити:
breeze@breeze:/usr/local/cuda/lib64$ sudo rm libcudnn.so
[sudo] password for breeze:
breeze@breeze:/usr/local/cuda/lib64$ sudo rm libcudnn.so.7
breeze@breeze:/usr/local/cuda/lib64$ sudo ln libcudnn.so.7.0.5 libcudnn.so.7
breeze@breeze:/usr/local/cuda/lib64$ sudo ln libcudnn.so.7 libcudnn.so
breeze@breeze:/usr/local/cuda/lib64$ sudo ldconfig
І все нормально :)