2011-02-02 2 views
2

я пишу свой первый код 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, я получаю ту же ошибку.

+2

Возможный дубликат [Невозможно открыть файл cpp1.ii при компиляции проекта CUDA] (http://stackoverflow.com/questions/3615750/unable-to-open-cpp1-ii-file-while-compiling-cuda- project) –

ответ

2

Похоже, что у вас есть несколько нелатинских символов в именах ваших каталогов, и это может вызвать проблемы. Можете ли вы попробовать разместить инструментарий и ваш проект в каталог без таких символов? Вероятно, вам также необходимо указать переменные среды TMPDIR и TEMPDIR (я думаю, что я правильно их помню) также для латинских путей.

Если это проблема, пожалуйста, напишите здесь, а также рассмотрите вопрос об ошибке (вам нужно стать зарегистрированным разработчиком, если вы еще этого не сделали).

+0

Я согласен - компилятор работает только с ошибкой, потому что он не может открыть (обычно это означает, что каталог не существует, он не может найти каталог, или файл был помечен как только для чтения). В вашем случае я предполагаю, что это причина, упомянутая выше. – Marm0t

Смежные вопросы