CUDA编译错误

时间:2011-02-02 01:56:10

标签: c++ visual-studio cuda

我写下我的第一个CUDA代码如下:

#include<iostream>

__global__ void kernel ()
{
}

int main()
{
    kernel<<<1,   1>>> ();
    std::cout<<"hello world"<<std:endl;
    system("pause");
    return 0;
}

我按照这两页的说明设置了Visual Studio 2008:

但是在编译之后,它会产生错误。我不知道问题是什么,或者我哪里出错了。以下是在32位Windows 7系统上运行时构建输出窗口包含的内容:

1>------ Build started: Project: CUDA, Configuration: Debug Win32 ------
1>Compiling with CUDA Build Rule...
1>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\bin\nvcc.exe"    -gencode=arch=compute_10,code=\"sm_10,compute_10\" -gencode=arch=compute_20,code=\"sm_20,compute_20\"  --machine 32 -ccbin "d:\Program Files\Microsoft Visual Studio 9.0\VC\bin"    -Xcompiler "/EHsc /W3 /nologo /O2 /Zi   /MT  "  -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\include" -maxrregcount=32  --compile -o "Debug/main.cu.obj" main.cu 
1>main.cu
1>Catastrophic error: cannot open source file "C:/Users/露隆/AppData/Local/Temp/tmpxft_000011e4_00000000-8_main.compute_10.cpp1.ii"
1>1 catastrophic error detected in the compilation of "C:/Users/露隆/AppData/Local/Temp/tmpxft_000011e4_00000000-8_main.compute_10.cpp1.ii".
1>Compilation terminated.
1>Project : error PRJ0019: A tool returned an error code from "Compiling with CUDA Build Rule..."
1>Build log was saved at "file://c:\Users\丁\AppData\Local\NVIDIA Corporation\NVIDIA GPU Computing SDK 3.2\C\src\CUDA\Debug\BuildLog.htm"
1>CUDA - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

你能帮我解决这个问题吗?我在SDK src目录中运行了一些示例,我可以成功编译并运行示例deveicQuery,但是当我尝试编译BandWithTest时,我得到了同样的错误。

1 个答案:

答案 0 :(得分:2)

您的目录名称中似乎有一些非拉丁字符,这可能会导致问题。您可以尝试将工具包和项目放入没有这些字符的目录中吗?您可能还需要将TMPDIR和TEMPDIR环境变量(我认为我记得正确)指向仅拉丁路径。

如果这是问题所以请回复此处并考虑提交错误(如果您还没有,则需要成为注册开发人员)。