从命令行编译CUDA代码

时间:2014-01-13 23:11:57

标签: c++ cuda gpgpu

我正在尝试使用以下语法从命令行编译CUDA代码:

nvcc -c MyFile.cu -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin"

我安装了CUDA Toolkit 5.5以及Visual C ++ 2010 Express。我没有完整版的Visual Studio。

我收到以下错误消息:

nvcc : fatal error : nvcc cannot find a supported version of Microsoft Visual Studio. Only the versions 2008, 2010, and 2012 are supported

我见过人们使用CUDA Toolkit 5.0进行VC2010 Express编译的先例,例如,在这个帖子中

https://devtalk.nvidia.com/default/topic/535527/?comment=3762165

因此,我无法理解它会有什么重大差异,因为它是CUDA 5.5而不是5.0。它是VC Express而不是VC Professional会有所不同吗?在编译方面,为什么会这么重要? Pro和Express真的使用非常不同的编译器吗?

1 个答案:

答案 0 :(得分:4)

我还不能发表评论,我不知道这是否是正确答案,因为我没有2010快递。所以为了帮助我尝试答案。

我可以为您提供编译行的开头,这与您的编译行略有不同:

set CUDAFE_FLAGS=--sdk_dir "C:\Program Files (x86)\Windows Kits\8.0\"
"C:\_work\API\CUDA\bin\nvcc.exe" --use-local-env --cl-version 2012 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\x86_amd64"        --keep-dir x64\Prod -maxrregcount=0  --machine 64 

从此我希望你改变你的路径,cl-version也改为

"C:\_work\API\CUDA\bin\nvcc.exe" --use-local-env --cl-version 2010 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cl.exe" --machine 32

请注意我也尝试将其更改为32位。我认为这就是你正在运行的。

干杯

相关问题