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)
注意这里下载安装包時需要帐号登陆才可以。
(2) 根据教程安装,主要步骤摘录如下
(3) 不过到这里先别着急,还需要后续操作一下,可以参考博客最后一部分
这是才算安装完成。
(4) 然后再编译还是找不到 libcudnn.so.7.1.4 ,怎么办?
之前好像跟 CUDA 连体安装的是 libcudnn.so.5.1.10
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.
指向两个地方,下面我们直接对症下药
第一个是将 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 !
标签:8.0,CMake,libcudnn,cuDNN,usr,版本,include,local,cuda 来源: https://www.cnblogs.com/phillee/p/11173316.html