我刚刚安装了 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,我也找不到,有人有解决办法吗?

最佳答案

正如您的编译选项 -I../../common/inc 所示,helper_cuda.h 位于 $CUDA_HOME/samples/common/inc/ 中。

如果要将示例复制到自定义位置,则必须复制整个 samples 目录,或者修改一些代码/编译选项以将人员包含在 common/ 目录中。

关于compiler-construction - 试图让 CUDA 工作,样本找不到 helper_cuda.h,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19352941/

10-15 12:34