纹理<......>在VS 2012和Cuda 5.0中是不可接受的:



我有一个现有的应用程序,可以在 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中调整什么才能编译此代码?

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

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

相关内容

最新更新