2010-01-05 6 views
5

Je suis sous Windows 7 64 bits, avec Visual Studio 2008. J'ai installé les pilotes CUDA et le SDK. Le SDK est livré avec de nombreux exemples, y compris les exécutables compilés et le code source. Les exécutables compilés fonctionnent merveilleusement bien. Quand j'ouvre les solutions vc90 et aller construire dans la configuration Win32 je reçois cette erreur:La compilation d'exemples CUDA donne une erreur de construction

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

Construire journal:

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 ========== 

Si je tente de compiler en 64 bits, il ne construit pas du tout et saute juste le projet

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

Je suis nouveau en C++, après avoir fait C# pendant un certain temps. Je suis certain qu'il y a quelque chose de petit qui me manque, mais tous les indices que vous pourriez fournir seraient appréciés.

Répondre

2

Vérifiez si le compilateur x64 est installé. Puis changez le type de projet en x64. J'ai eu le même problème en essayant de compiler 32bit cuda programme avec 64bit win7.

Assurez-vous également que vous avez ajouté des bibliothèques 64 bits et inclut dans le chemin de recherche.

1

Vous devez vous assurer que tous les outils correspondent. Si vous avez installé le compilateur Visual Studio 64 bits, vous devez installer la version 64 bits de la boîte à outils CUDA.

Si vous avez seulement le compilateur Visual Studio 32 bits, vous devriez pouvoir installer le toolkit CUDA 32 bits. Idéalement, vous devez installer tous les outils 64 bits. Ensuite, vous serez capable de construire à la fois les exemples 64 bits et 32 ​​bits (compilation croisée).

2

Vous vous concentrez sur le mauvais message d'erreur.

Le fichier .obj n'existe pas car l'étape de compilation nvcc a échoué.

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/../..' 
Questions connexes