Found cuDNN: v? (include: /usr/include, library: /usr/lib/x86_64-linux-gnu/libcudnn.so) CMake Error

最近在安装spconv的时候,本地编译出现了问题,没有cudnn支持,所以按照教程安装:

Install CuDNN[Solved] How to verify CuDNN installation? | 9to5Answer

Step 1: Register an nvidia developer account and download cudnn here (about 80 MB). You might need nvcc --version to get your cuda version.

Step 2: Check where your cuda installation is. For most people, it will be /usr/local/cuda/. You can check it with which nvcc.

Step 3: Copy the files:

$ cd folder/extracted/contents
$ sudo cp include/cudnn.h /usr/local/cuda/include
$ sudo cp lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

 但是在执行python setup.py bdist_wheel命令后,还是报错:

Found cuDNN: v? (include: /usr/include, library: /usr/lib/x86_64-linux-gnu/libcudnn.so) CMake Error

发现有解决方法:

新版本cudnn的版本信息包含在cudnn_version.h中,而不是cudnn.h中

修改:libtorch/share/cmake/Caffe2/public/cuda.cmake,148行

替换:
file(READ ${CUDNN_INCLUDE_PATH}/cudnn.h CUDNN_HEADER_CONTENTS)
为 : 
file(READ ${CUDNN_INCLUDE_PATH}/cudnn_version.h CUDNN_HEADER_CONTENTS)

同样地,查询cuDNN版本也要更改为cudnn_version.h

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

但是上面这个方法,还是不行,仔细看148行(实际149行,已经考虑到兼容旧版本这个问题),所以只要执行:

 sudo cp cuda/include/cudnn_version.h /usr/local/cuda/include/

这样就可以了。

进一步执行: cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值