我第一次尝试使用CUDA gpu编程,并在设置构建自定义时遇到了问题。我不确定我是否只是做错了。基本上,当我设置项目构建自定义到CUDA 5.0时,它不起作用。我尝试制作.cu(甚至.cpp)文件,我收到一条错误说明:
导入的项目“C:\ Program Files (86)\的MSBuild \ Microsoft.Cpp \ V4.0 \ V110 \ BuildCustomization \ CUDA 5.0.props“未找到。确认声明中的路径是正确的,并且该文件存在于磁盘上。 c:\ Users \“USER NAME”\ documents \ visual studio 2010 \ Projects \“PROJECT NAME“\”PROJECT NAME“.vcxproj
之后,项目属性页面变为空,只有一个空框架和参考页面。关闭CUDA声明什么都不做。
我尝试卸载CUDA工具包并重新安装但无济于事。
我对此很陌生,但任何帮助都会受到赞赏!
答案 0 :(得分:9)
为了使用CUDA构建自定义,一些文件应该复制到Visual Studio文件夹,在你的情况下,CUDA 5.0.props缺失
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\BuildCustomization\
要解决此问题,请在CUDA 5.0.props
驱动器中搜索C:
并将其复制到上述路径。
答案 1 :(得分:1)
刚才发生这种情况,我所做的解决方案是重新运行CUDA安装程序,并确保选择Visual Studio集成。
答案 2 :(得分:1)
如果您没有在机器上安装CUDA,也会发生这种情况。这可能很常见,例如您可能正在使用笔记本电脑开发项目而且它没有CUDA卡。无论如何要解决这个问题,你需要编辑Visual Studio项目文件.vcxproj(NVIDIA的所有人都在听吗?)
更改
<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.props" />**
到
<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.props" Condition="exists('$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.props')" />
然后
<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.targets" />
到
<Import Project="$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.targets" Condition="exists('$(VCTargetsPath)\BuildCustomizations\CUDA 8.0.targets')" />
然后右键单击visual studio中的项目图标并选择重新加载选项,项目应该重新加载,即使您没有在该特定计算机上安装CUDA。
您可能需要采取进一步措施,例如。使用#ifdef 排除这些包含文件和其他cuda代码部分。