내가 성공적으로 내 PC에 CUDA 8.0 설치하고 내 우분투 16.10에서 다음 명령을 실행하여 해당 파일을 볼 수 있습니다 : 다음치명적인 오류 : cuda.h : 해당 파일이나 디렉토리
$ sudo find/-name nvcc
/usr/local/cuda-8.0/bin/nvcc
$ sudo find/-name cuda
/usr/local/cuda
/usr/local/cuda-8.0/targets/x86_64-linux/include/thrust/system/cuda
/usr/share/doc/cuda
/usr/include/nvidia-367/cuda
, 내가 가지고 CUDA가 설치되어있는 경우 다음과 같은 소스 코드 (has_cuda.c)는 체크 아웃 :
#include<cuda.h>
int main()
{
int deviceCount;
cudaError_t e = cudaGetDeviceCount(&deviceCount);
return e == cudaSuccess ? deviceCount : -1;
}
그러나이 코드를 실행하는 나에게 다음과 같은 오류 반환 :
$ gcc has_cuda.c
has_cuda.c:1:17: fatal error: cuda.h: No such file or directory
#include<cuda.h>
^
compilation terminated.
,536,913을 무슨 일 할 수
$ sudo find/-name cuda.h
/usr/local/cuda-8.0/targets/x86_64-linux/include/cuda.h
/usr/include/nvidia-367/cuda/cuda.h
/usr/include/linux/cuda.h
/usr/src/linux-headers-4.8.0-22/include/linux/cuda.h
/usr/src/linux-headers-4.8.0-22/include/uapi/linux/cuda.h
/usr/src/linux-headers-4.8.0-32/include/linux/cuda.h
/usr/src/linux-headers-4.8.0-32/include/uapi/linux/cuda.h
내가 아주 신인이에, 너무 : 63,210
나는 내 디렉토리에 cuda.h 찾았다 다음과 같은 장소에서 그들을 발견? 내가 cuda.h가 어디에 있는지 지적하기 위해 변수를 내 보내야합니까? 내가 어떻게 할 수 있니?
이 대답의 가장 중요한 점은 'nvcc'가 CUDA 코드로 취급하도록 지시하는'.cu' 확장자를 갖도록 소스 파일의 이름을 바꾸는 것입니다. 이것은 관련 라이브러리에 링크 할 것이지만'#include '을 맨 위의 중복으로 만드는 데 필요한 헤더 파일도 포함합니다 (자세한 내용은 Robert Crovella의 답변을 참조하십시오). –
tera