【问题标题】:texture <...> not acceptable in VS 2012 & Cuda 5.0:纹理 <...> 在 VS 2012 和 Cuda 5.0 中不可接受:
【发布时间】:2012-12-02 23:43:02
【问题描述】:

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

我按照 Nvidia 论坛和this blog entry 中的步骤在 VS 2012 中设置 CUDA,但是 我的带有引用纹理的行的代码未编译,例如:

文件:filter.cu

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

如果我右键单击该文件,我确实将其属性视为 CUDA 等。所以听起来 VS 仍然不知道 CUDA?

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

【问题讨论】:

    标签: cuda visual-studio-2012 gpu


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 我已经这样做了——选择了 Cuda 5.0 构建规则——在引用的博客条目中指定——仍然无法识别。
      • 摆弄了很多,我发现问题是这是一个新系统,我只添加了 VS 2012; Cuda 规则放在一起的命令行坚持使用 MCSV 9 或 MCSV 10,而我在系统上拥有的只有 MCSV 11,因此编译失败。 CUDA 和 VS 2012 不能合作,或者需要进一步修改使用 MCSV 11 进行 C++ 编译所需的规则
      猜你喜欢
      • 2012-07-10
      • 2015-10-24
      • 2015-07-08
      • 1970-01-01
      • 1970-01-01
      • 2014-07-27
      • 1970-01-01
      • 1970-01-01
      • 2014-04-26
      相关资源
      最近更新 更多