在安装pycuda的过程中,出现找不到cuda.h文件,出现这种问题有俩种原因:
1.确实没有找到cuda.h文件,原因是环境变量没有包含cuda路径,打开~/.bashrc
添加环境路径:
export C_INCLUDE_PATH=/usr/local/cuda-9.0/include/:${C_INCLUDE_PATH}
export CPLUS_INCLUDE_PATH=/usr/local/cuda-9.0/include/:${CPLUS_INCLUDE_PATH
执行:
source ~/.bashrc
2.环境路径已经包含,还是报错找不到cuda.h文件,原因是在安装pycuda的过程使用了命令:
sudo pip3 install pycuda
这种情况下,执行的root权限,但由于pycuda安装时会使用nvcc,而nvcc是不具有root权限的,所以会导致安装失败。因此需要去掉sudo,只在用户权限下执行pip3 install pycuda。
pip3 install pycuda
然后安装到最后,又出现了
error: could not create 'xxx' :Permission denied
出现这种情况的原因是由于使用普通用户权限导致python包无法安装(ps:这种情况不一定每个人都出现),意味着安装python包必须使用管理员权限,即必须加上sudo,但是nvcc没有sudo的权限,怎么办呢?
以下是我的解决方案:
在python包的安装路径下添加chmod 777
权限,一般python包安装路径为:
/usr/local/lib/python3.6/dist-packages/
执行命令:
cd /usr/local/lib/python3.6/dist-packages/
sudo chmod 777 ./
然后再使用普通用户权限安装pycuda,即:
pip3 install pycuda
成功。
参考:
https://blog.csdn.net/u011337602/article/details/87936331