安裝CUDA 出現libEGL.so.1 is not a symbolic link libcudnn.so.5 is not a symbolic link
阿新 • • 發佈:2019-01-31
在安裝CUDA之後總是會出現連結問題
/usr/lib/nvidia-375/libEGL.so.1 is not a symbolic link
/usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link
/usr/local/cuda-8.0/targets/x86_64-linux/lib/libcudnn.so.5 is not a symbolic link
查閱資料發現是 軟連線的版本可能不對了,所以找不到連結
小結:
1. sudo ln -s 重建軟連線
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.66 /usr/lib/nvidia-375/libEGL.so.1 sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.66 /usr/lib32/nvidia-375/libEGL.so.1
sudo ln -sf libcudnn.so.5.1.10 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
2. ldconfig 當有XXX.so.x is not a symbolic link存在的時候 會報錯
使用 ls -l 查詢不到軟連線的目標:軟連線目標為空
比如:
bliss-PC:~$ ls -l /usr/local/cuda-8.0/targets/x86_64-linux/lib/libcudnn.so.5 -rwxr-xr-x 1 root root 84163560 5月 13 20:26 /usr/local/cuda-8.0/targets/x86_64-linux/lib/libcudnn.so.5
一. libEGL.so.1 is not a symbolic link的解決方法是重新連結它的目標
#備份舊的軟連線(可以不做)
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
比如對於libEGL.so.375.39重建連結#重建新的軟連線 sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1 sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1
因為我本機的版本是 libEGL.so.375.66
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.66 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.66 /usr/lib32/nvidia-375/libEGL.so.1
二. libcudnn.so.5 is not a symbolic link的解決方法是重新連結它的目標
在cudnn目錄中查詢連結 發現為空
cd /usr/local/cuda/lib64
ls -l libcudnn.so
-rwxr-xr-x 1 root root 84163560 5月 13 20:26 libcudnn.so
ls -l libcudnn.so.5
-rwxr-xr-x 1 root root 84163560 5月 13 20:26 libcudnn.so.5
重新覆蓋 新增軟連結
sudo ln -sf libcudnn.so.5.10 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so