5

我第一次尝试 CUDA gpu 编程,在设置构建自定义时遇到了问题。我不确定我是否只是做错了什么。基本上,当我将项目构建自定义设置为 CUDA 5.0 时,它不起作用。我尝试制作一个 .cu(甚至是 .cpp)文件,但我收到一条错误消息:

未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\BuildCustomization\CUDA 5.0.props”。确认声明中的路径正确,并且该文件存在于磁盘上。c:\Users\"用户名"\documents\visual studio 2010\Projects\"项目名称"\"项目名称".vcxproj

之后项目属性页面变为空,只有一个框架和参考页面是空的。关闭 CUDA 声明什么也不做。

我曾尝试卸载 CUDA 工具包并重新安装它,但无济于事。

我对此很陌生,但任何帮助将不胜感激!

4

3 回答 3

10

为了使用 CUDA 构建自定义,应将一些文件复制到 Visual Studio 文件夹,在您的情况下 CUDA 5.0.props 缺少

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\BuildCustomization\

为了解决这个问题,请CUDA 5.0.props在您的C:驱动器中搜索并将其复制到上述路径。

于 2013-03-19T09:40:56.113 回答
2

这发生在我身上,我所做的解决方案是重新运行 CUDA 安装程序并确保选择 Visual Studio 集成。

于 2016-03-23T19:09:06.423 回答
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 代码部分。

于 2017-10-19T09:09:24.663 回答