无法在 VS 2008 中编译 CUDA 应用程序

发布于 2024-08-15 13:31:56 字数 373 浏览 1 评论 0原文

我不想在 Visual Studio 2008 Professional 中使用 CUDA。我使用的是 Windows 7 64 位,并且已完成以下步骤:
- 下载并安装 CUDA 驱动程序、工具包和 SDK。我可以运行 SDK 中的任何示例。
- 下载并安装CUDA VS Wizard
当我尝试创建 CUDA Win 应用程序时,出现以下编译错误:
错误 1 ​​致命错误 LNK1181:无法打开输入文件 '.\x64\Debug\main.obj'
有什么想法如何修复它吗?

I't trying to work with CUDA with Visual Studio 2008 Professional. I'm using Windows 7 64 bit and I've done following steps:
- Downloaded and installed CUDA Driver, Toolkit ans SDK. I can run any example from SDK.
- Downloaded and installed CUDA VS Wizard
When I'm trying to create a CUDA Win App I've got the following compile error:
Error 1 fatal error LNK1181: cannot open input file '.\x64\Debug\main.obj'
Any ideas how to fix it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

女皇必胜 2024-08-22 13:31:56

我不熟悉您使用的 Visual Studio 向导(它不是 NVIDIA 产品,因此不确定它的支持程度)。

一般来说,我建议使用 Microsoft 默认向导(例如控制台应用程序)创建项目,然后添加 CUDA 构建规则 (cuda.rules)。构建规则指示 Visual Studio 如何将 .cu 文件编译为 .obj 文件,然后可以正常链接到您的应用程序,然后您所需要做的就是添加 .cu 文件,它们将自动集成。

cuda 构建规则还可以通过项目属性访问最新的编译器标志等,当您升级编译器时,如果您需要任何新功能,可以轻松地从最新的 SDK 更新 cuda.rules 文件。

SDK 中提供了 cuda.rules 文件(位于 common 目录中)和用于语法突出显示的 usertype.dat 文件(位于 doc/syntax_highlighting 目录中)。

顺便说一句,我还建议添加对 .cu 文件的 Intellisense 支持。 VS2008 的注册表项(VS2005 将 9.0 替换为 8.0)是:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Languages\Language Services\C/C++]
"NCB Default C/C++ Extensions"=".cpp;.cxx;.c;.cc;.h;.hh;.hxx;.hpp;.inl;.tlh;.tli;.cu;.cuh;.cl"

I’m not familiar with the Visual Studio wizard that you have used (it is not an NVIDIA product so not sure how well supported it is).

In general I would recommend creating a project using the Microsoft default wizards (e.g. Console app) and then adding the CUDA build rule (cuda.rules). The build rule instructs Visual Studio how to compile .cu files to .obj files that can then be linked with your application as normal, then all you need to do is add .cu files and they will be integrated automatically.

The cuda build rules also provide access to the latest compiler flags etc. via the project properties, and when you upgrade the compiler it is simple to update the cuda.rules file from the latest SDK if you need any new features.

The cuda.rules file (in the common directory) and the usertype.dat file for syntax highlighting (in the doc/syntax_highlighting directory) are available in the SDK.

Incidentally I'd also recommend adding Intellisense support for .cu files. The registry key for VS2008 (replace 9.0 with 8.0 for VS2005) is:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Languages\Language Services\C/C++]
"NCB Default C/C++ Extensions"=".cpp;.cxx;.c;.cc;.h;.hh;.hxx;.hpp;.inl;.tlh;.tli;.cu;.cuh;.cl"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文