Пытаясь заставить CUDA работать, образец не может найти помощника cuda.ч
Я только что установил CUDA и следовал http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-mac-os-x/index.html
все работает, пока я не попытаюсь скопировать пример кода, такой как deviceQuery в ~/Desktop и скомпилировать.
Я получаю следующие ошибки при компиляции:
/Developer/NVIDIA/CUDA-5.5/bin/nvcc -ccbin g++ -I../../common/inc -m64 -Xcompiler -arch -Xcompiler x86_64 -gencode arch=compute_10,code=sm_10 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code="sm_35,compute_35" -o deviceQuery.o -c deviceQuery.cpp
deviceQuery.cpp:23:25: error: helper_cuda.h: No such file or directory
deviceQuery.cpp: In function ‘int main(int, char**)’:
deviceQuery.cpp:111: error: ‘SPRINTF’ was not declared in this scope
deviceQuery.cpp:116: error: ‘_ConvertSMVer2Cores’ was not declared in this scope
deviceQuery.cpp:206: error: ‘checkCudaErrors’ was not declared in this scope
deviceQuery.cpp:230: error: ‘checkCudaErrors’ was not declared in this scope
deviceQuery.cpp:241: error: ‘checkCudaErrors’ was not declared in this scope
make: *** [deviceQuery.o] Error 1
код будет компилироваться и запускаться в каталоге CUDA, и ясно, что компилятор не может найти helper_cuda.h, я тоже не могу его найти у кого-нибудь есть решение?
2 ответов
как указано в ваших параметрах компиляции -I../../common/inc
, helper_cuda.h
находится в $CUDA_HOME/samples/common/inc/
.
если вы хотите скопировать образцы к подгонянному месту, то вы должны скопировать все samples
dir или измените некоторые параметры кода / компиляции, чтобы включить персонал в common/
реж.
http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#environment-setup
инструментарий NVIDIA CUDA включает примеры программ в исходном виде. Вы должны скомпилировать их, изменив на ~ / NVIDIA_CUDA-8.0_Samples и ввод make. Полученные двоичные файлы будут помещены под ~ / NVIDIA_CUDA-8.0_Samples / bin
просто убедитесь, что:
$ export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
$ nvcc -V
должно показывать версию.
$ cd ~/some_path/NVIDIA_CUDA-8.0_Samples
$ make