CMake工程找不到相應的cuDNN版本的問題

(1) 去官網下載相應的版本,由於電腦以前安裝的是 CUDA8.0 ,找跟 CUDA 版本兼容的 cuDNN 下載便可,我選擇的是 cuDNN v7.1.4 Runtime Library for Ubuntu16.04(Deb) 和  cuDNN v7.1.4 Developer Library for Ubuntu 16.04 (Deb) html

注意這裏下載安裝包時須要賬號登錄才能夠。linux

(2) 根據教程安裝,主要步驟摘錄以下ui

(3) 不過到這裏先彆着急,還須要後續操做一下,能夠參考博客最後一部分spa

這是纔算安裝完成。code

(4) 而後再編譯仍是找不到 libcudnn.so.7.1.4 ,怎麼辦?htm

以前好像跟 CUDA 連體安裝的是 libcudnn.so.5.1.10 blog

cv@cv : /usr/local/cuda-8.0/include$ locate libcudnn.so
/usr/lib/x86_64-linux-gnu/libcudnn.so /usr/lib/x86_64-linux-gnu/libcudnn.so.7 /usr/lib/x86_64-linux-gnu/libcudnn.so.7.1.4 /usr/local/cuda-8.0/lib64/libcudnn.so /usr/local/cuda-8.0/lib64/libcudnn.so.5 /usr/local/cuda-8.0/lib64/libcudnn.so.5.1.10

 cmake 提示報錯表示找不到新的版本教程

-- Found CUDNN: /usr/local/cuda-8.0/include  
-- Found cuDNN: v5.1.10  (include: /usr/local/cuda-8.0/include, library: /usr/local/cuda-8.0/lib64/libcudnn.so) CMake Error at libtorch/share/cmake/Caffe2/public/cuda.cmake:159 (message): PyTorch requires cuDNN 7 and above.

指向兩個地方,下面咱們直接對症下藥get

第一個是將 libcudnn.so 連接向 /usr/lib/x86_64-linux-gnu/libcudnn.so.7.1.4 博客

第二個是將 /usr/local/cuda-8.0/include 裏面的 cudnn.h 改掉由於它是對應 libcudnn.so.5.1.10 的,怎麼改呢,簡單粗暴

cv@cv : /usr/local/cuda-8.0/include $ sudo mv cudnn.h cudnn.h.bak
cv@cv : /usr/local/cuda-8.0/include $ locate cudnn.h /usr/include/cudnn.h /usr/local/cuda-8.0/include/cudnn.h cv@cv : /usr/local/cuda-8.0/include $ sudo cp -fv /usr/include/cudnn.h /usr/local/cuda-8.0/include/

(6) 查看一下內容,上面的是 cudnn 版本5的頭文件部分摘錄,下面的是 cudnn 版本7的頭文件部分摘錄。

到此應該能夠經過 CMake 編譯了, Bingo !

相關文章
相關標籤/搜索