编译dlib cuda版本时会遇到找不到cuda头文件的一些问题记录如下:
1.默认已经安装好了显卡驱动;
2.默认已经安装好了cuda和对应的cudnn版本;
3.下载dlib安装包:
git clone https://github.com/davisking/dlib.git
cd dlib
mkdir build
cd build
cmake … -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1
cmake --build .
编译时会遇到找不到cu头文件的问题:
1)#include <cublas_v2.h>
2)#include <cusolverDn.h>
3) #include <curand.h>
/dlib/dlib-19.13/dlib/cuda/cusolver_dlibapi.cu:9:23: fatal error: cublas_v2.h: No such file or directory
/dlib/dlib-19.13/dlib/cuda/cusolver_dlibapi.cu:10:24: fatal error: cusolverDn.h: No such file or directory
/dlib/dlib-19.13/dlib/cuda/curand_dlibapi.cpp:9:20: fatal error: curand.h: No such file or directory
两种解决方案:
a:apt-get install cuda-cublas-dev-10-0 (此版本号10.0 请根据已安装的cuda的版本进行修改)
apt-get install cuda-cusolver-dev-10-0 (此版本号10.0 请根据已安装的cuda的版本进行修改)
apt-get install cuda-curand-dev-10-0 (此版本号10.0 请根据已安装的cuda的版本进行修改)
b: 请到https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1604/x86_64/
分别下载3个头文件所需要的deb包:
cuda-license-10-0_10.0.130-1_amd64.deb
cuda-cublas-dev-10-0_10.0.130-1_amd64.deb
cuda-cublas-10-0_10.0.130-1_amd64.deb
cuda-cusolver-10-0_10.0.130-1_amd64.deb
cuda-cusolver-dev-10-0_10.0.130-1_amd64.deb
cuda-curand-10-0_10.0.130-1_amd64.deb
下载完成后用dpkg -i deb包依次进行安装,然后重新编译dlib
- build并安装python扩展
cd …
python setup.py install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA