2

在没有 NVidia CUDA 论坛的情况下,有人知道如何解决这个问题吗?看起来CUDA工具包的VS集成有问题。

我刚刚安装了 CUDA 工具包 5 的生产发布版本(Windows 7 上的笔记本电脑为 32 位),替换了候选发布版本(效果很好),现在我无法编译或构建任何东西,包括 CUDA 示例。

我尝试过的所有操作都会出现错误,例如: ...BuildCustomizations\CUDA 5.0.targets(360,9): error MSB4062: The "Nvda.Build.CudaTasks.ResolvePaths" task could not be loaded from the assembly C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\Nvda.Build.CudaTasks.v5.0.dll。确认声明正确,程序集及其所有依赖项都可用,并且任务包含实现 Microsoft.Build.Framework.ITask 的公共类。

“CUDA 5.0.targets”文件(它是一个 XML 文件)有几个 UsingTask 元素,我没有看到对提到的 ITask 类的任何引用,但我不愿意开始编辑我不理解的文件。

如果我切换 Build Customisations,CUDA 4.2 也会出现类似的错误。

这是使用 Visual Studio 2010 Professional。非 CUDA 项目仍在编译和构建。

关于从哪里开始的任何建议?

4

2 回答 2

3

要修复,您需要安装 64 位 CUDA 5.0.32 SDK(CUDA 5.0 的最新版本)。它包含比 32 位安装程序更新的 Nvda.Build.CudaTasks.v5.0.dll 版本(修改日期是 25/09/2012 而不是 2012 年 5 月)。

我无法将 Dll 复制到正确的位置,因为它正在被另一个进程使用。为了解决这个问题,我使用带有 CMD 提示符的 Windows SAFE_MODE 执行的批处理文件(在启动时使用 F8 来选择安全模式启动选项)。

批处理命令(在我的 64 位 Windows 系统上工作):复制“[YOUR INSTALL PATH]\CUDA\v5.0\extras\visual_studio_integration\MSBuildExtensions\Nvda.Build.CudaTasks.v5.0.dll”“C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations"

确保您的道具和目标也从 SDK 安装文件夹中复制。

于 2012-10-16T05:27:41.090 回答
1

此问题可能是由于 Microsoft .NET Framework 功能被关闭所致。

我回答了另一个和你一样的问题。

https://stackoverflow.com/a/21666179/2700726

于 2014-02-09T22:52:22.560 回答