2010-01-05 5 views
5

Sto utilizzando Windows 7 a 64 bit, con Visual Studio 2008. Ho installato i driver CUDA e l'SDK. L'SDK include alcuni esempi tra cui eseguibili compilati e codice sorgente. Gli eseguibili compilati funzionano meravigliosamente. Quando apro le soluzioni vc90 e vado a costruire nella configurazione Win32 ottengo questo errore: registroLa compilazione degli esempi CUDA restituisce un errore di build

Error 1 fatal error LNK1181: cannot open input file '.\Release\bandwidthTest.cu.obj' bandwidthTest bandwidthTest 

Corporatura:

1>------ Build started: Project: bandwidthTest, Configuration: Release Win32 ------ 
1>Compiling with CUDA Build Rule... 
1>"C:\CUDA\bin64\nvcc.exe" -arch sm_10 -ccbin "c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" -Xcompiler "/EHsc /W3 /nologo /O2 /Zi /MT " -I"C:\CUDA\include" -I"../../common/inc" -maxrregcount=32 --compile -o "Release\bandwidthTest.cu.obj" "c:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\src\bandwidthTest\bandwidthTest.cu" 
1>nvcc fatal : Visual Studio configuration file '(null)' could not be found for installation at 'c:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin/../..' 
1>Linking... 
1>LINK : fatal error LNK1181: cannot open input file '.\Release\bandwidthTest.cu.obj' 
1>Build log was saved at "file://c:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\src\bandwidthTest\Release\BuildLog.htm" 
1>bandwidthTest - 1 error(s), 0 warning(s) 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

Se tento di compilare in x64 non costruisce a tutti e salta semplicemente il progetto

1>------ Skipped Build: Project: bandwidthTest ------ 
1> 
========== Build: 0 succeeded or up-to-date, 0 failed, 1 skipped ========== 

Sono nuovo in C++, avendo fatto C# per un po '. Sono sicuro che ci sia qualcosa di piccolo che mi manca, ma qualsiasi indizio che potresti fornire sarebbe apprezzato.

risposta

2

Verificare se è stato installato il compilatore x64. Quindi cambia il tipo di progetto in x64. Ho avuto lo stesso problema quando ho provato a compilare un programma CUD a 32 bit con 64 bit Win7.

Assicurati inoltre di aver aggiunto librerie a 64 bit e include il percorso di ricerca.

1

È necessario assicurarsi che tutti gli strumenti corrispondano. Quindi, se hai installato il compilatore Visual Studio a 64 bit, dovresti installare la versione a 64 bit del toolkit CUDA.

Se si dispone solo del compilatore di Visual Studio a 32 bit, è necessario installare il toolkit CUDA a 32 bit. Idealmente dovresti installare tutti gli strumenti a 64 bit. Quindi sarai in grado di costruire sia gli esempi a 64-bit che a 32-bit (cross-compile).

2

Ti stai concentrando sul messaggio di errore sbagliato.

Il file .obj non esiste perché il passaggio di compilazione nvcc non è riuscito.

nvcc fatal : Visual Studio configuration file '(null)' could not be found for installation at 'c:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/bin/../..'