1

我有一个现有的应用程序可以在 CUDA 4.2 和 VS 2010 中编译和运行良好。我现在正在移植到一个具有 CUDA 5.0 和 VS 2012 的新系统。不幸的是我必须使用 VS 2012。

我按照在 VS 2012 中设置 CUDA 的步骤,就像在 Nvidia 论坛和这个博客条目中一样,但是我的带有引用纹理的行的代码没有编译,例如:

文件:filter.cu

texture < float, cudaTextureType2D, cudaReadModeElementType> texRefEachRes_0;
texture < float, cudaTextureType2D, cudaReadModeElementType> texRefEachRes_1;

如果我右键单击该文件,我看不到它的属性是 CUDA 等。所以听起来 VS 仍然不知道 CUDA?

我还需要在 VS 2012 中进行哪些调整才能编译此代码?

4

2 回答 2

2

我在 Cuda 5.0.targets 文件中输入错误;我的问题中引用的博客条目中给出的过程确实有效,而作为 Cuda 5.0 一部分包含的目标文件不正确。所以修复 xml 目标文件中的错误输入解决了这个问题。

于 2012-12-02T15:43:02.077 回答
0

在解决方案资源管理器中,右键单击该项目。选择构建自定义。选择 CUDA 自定义文件之一。

于 2012-12-02T04:52:48.633 回答