在Jetson Xavier NX源码安装GPU版dlib遇cuDNN版本报错如何解决
Jetson Xavier NX 源码安装GPU版dlib(cuDNN识别错误问题修复方案)
问题根因
dlib 19.19 内置的cuDNN版本检测脚本存在适配缺陷,无法正确识别Jetson设备JetPack预装的cuDNN路径与版本,哪怕实际cuDNN版本远高于要求的v5.0,也会误报版本不兼容并关闭CUDA支持。
修复操作步骤
- 第一步:先确认本机cuDNN状态,执行如下命令验证安装:
dpkg -l | grep cudnn
正常会输出cuDNN相关安装包信息,JetPack默认预装的cuDNN版本均满足dlib要求,无需额外安装。 - 第二步:清空之前生成的build目录内容,重新执行cmake命令,手动指定cuDNN路径与Jetson算力参数:
cd dlib-19.19/build rm -rf ./* cmake .. \ -DDLIB_USE_CUDA=1 \ -DCUDA_ARCH_NAME=Auto \ -DCUDNN_INCLUDE_DIR=/usr/include \ -DCUDNN_LIBRARY=/usr/lib/aarch64-linux-gnu/libcudnn.so \ -DCMAKE_PREFIX_PATH=/usr/lib/aarch64-linux-gnu/
执行后即可看到dlib正常识别CUDA和cuDNN,不会再关闭CUDA支持。
- 第三步:编译并安装
make -j$(nproc) sudo make install
如果需要安装Python版本的dlib绑定,编译完成后回到dlib根目录执行:sudo python3 setup.py install
安装验证
执行如下Python代码验证GPU支持是否正常开启:
import dlib print(dlib.DLIB_USE_CUDA)
输出为True即代表GPU版dlib安装成功。
内容的提问来源于stack exchange,提问作者TaCheng Chang
相关产品推荐
相关产品推荐

