我正在尝试使用以下语法从命令行编译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
我见过先例,例如在此线程中使VC2010 Express与CUDA Toolkit 5.0一起编译.
https://devtalk.nvidia.com/default/topic/535527/?comment=3762165
因此,我无法理解会有什么关键差异,仅因为它是CUDA 5.5而不是5.0.是VC Express而不是VC Professional是否会有所作为?为什么在编译方面如此重要? Pro和Express是否真的使用完全不同的编译器?
解决方法:
我还不能发表评论,我不知道这是否是正确答案,因为我没有2010 Express.因此,为了帮助我,我将尝试给出答案.
我可以为您提供我的编译行的开始,它与您的稍有不同:
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版本也更改为
"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位.我认为这就是您正在运行的.
干杯
标签:c,cuda,gpgpu 来源: https://codeday.me/bug/20191011/1892371.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。