CUDA + Visual Studio 2013

CUDA + Visual Studio 2013

本文关键字:2013 Studio Visual CUDA      更新时间:2023-10-16

有没有办法在你的VS2013:社区版项目中有多个.cu文件?

假设我有一个 main.cu 作为应用程序的入口点,还有一些 class.cu 保存某些类方法的实现 - 是否可以编译它?

现在我有一个看起来像这样的项目,我从 Thrust 收到错误,看起来像人们在尝试仅使用 g++/microsoft 的编译器编译代码时通常遇到的错误,如果我只是将所有内容放在一个 .cu 中,一切正常 - 这意味着代码本身不是问题。

我的 CUDA 安装也不是问题,因为我可以在 VS 中很好地编译示例,如果我使用 nvcc.exe -c class.cu main.cu 编译我自己的项目,那么它就可以正常工作,我得到了.exe。

我在VS中遇到的上述错误是:

Error   2   error C2027: use of undefined type 'thrust::detail::STATIC_ASSERTION_FAILURE<false>'    

有什么想法吗?提前谢谢。

罗伯特的回答对我解决这个问题做出了巨大贡献 - 更准确地说,是他的陈述" 每个文件都可能有自己的设置,这可能会导致您的 class.cu 文件的行为不同,具体取决于您将其添加到项目中的方式。

最后,我所要做的就是转到class.cu的属性,然后在"常规"选项卡中将项目类型字段更改为CUDAC/C++ - 默认情况下它被设置为常规C/C++。

现在它可以在VS2013中编译和运行,没有任何问题。