我正在尝试在 VisualStudio 2010 中创建一个 Cuda 项目。我创建了一个简单的测试 .cu 文件,该文件接受一个数组并将其所有元素添加 1 并将结果发送回主机。
我已将 cudart.lib 文件添加到链接器。
在 .cu 代码中,我包含了#include cuda_runtime.h
标题。
但是当我试图编译它时,它给出了两个错误。
错误 C2065:'threadIdx':未声明的标识符
错误 C2059:语法错误:'<'
安装 Nvidia Nsight Visual Studio 版本并将 .cu 文件的项目类型设置为 CUDA C/C++ 后,它开始给出两个额外的错误:
错误 D8003:缺少源文件名
错误 MSB3721:命令 ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\bin\nvcc.exe" -gencode=arch=compute_10,code=\"sm_10,compute_10\" --use- local-env --cl-version 2010 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin" -I"C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\C\common \inc" -I"C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\shared\inc" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\include" -G -- keep-dir "Debug" -maxrregcount=0 --machine 32 --compile -g -Xcompiler "/EHsc /nologo /Od /Zi /MDd " -o "Debug\test.cu.obj" "\ucigrad.local\ Users\AGill\My Documents\Visual Studio 2010\Projects\cudatest\cudatest\test.cu"" 以代码 2 退出。
请帮助我如何解决它。我认为 VS2010 中的 nvcc 编译器可能存在一些问题,但我无法弄清楚。