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

时间:2009-12-21 15:28:25

标签: visual-studio-2008 cuda

我不想尝试使用Visual Studio 2008 Professional使用CUDA。我正在使用Windows 7 64位,我已经完成了以下步骤:
  - 下载并安装了CUDA Driver,Toolkit和SDK。我可以从SDK运行任何示例   - 已下载并已安装CUDA VS Wizard
当我尝试创建一个CUDA Win App时,我遇到了以下编译错误:
错误1致命错误LNK1181:无法打开输入文件'。\ x64 \ Debug \ main.obj'
任何想法如何解决它?

1 个答案:

答案 0 :(得分:1)

我不熟悉您使用过的Visual Studio向导(它不是NVIDIA产品,所以不确定它支持的程度如何)。

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

cuda构建规则还通过项目属性提供对最新编译器标志等的访问,并且当您升级编译器时,如果您需要任何新功能,可以从最新的SDK更新cuda.rules文件。< / p>

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

顺便提一下,我还建议为.cu文件添加Intellisense支持。 VS2008的注册表项(用9.0替换9.0 for VS2005)是:

[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"