2010-02-22 18 views
2

Lorsque vous essayez de construire un exemple du SDK GPU NVIDIA Computing en utilisant Visual Studio 2008, je reçois cette erreur bizarre:erreur dans nvcc en utilisant le mode d'émulation

"C:\CUDA\bin\nvcc.exe" -arch sm_10 -ccbin "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin" -deviceemu -D_DEVICEEMU -Xcompiler "/EHsc /W3 /nologo /Od /Zi /MTd " -I"C:\CUDA\include" -I"../../common/inc" -maxrregcount=32 --compile -o "Debug\matrixMul.cu.obj" "c:\Documents and Settings\All Users.SYSROOT\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\src\matrixMul\matrixMul.cu" 
nvcc fatal : Could not open input file C:\DOCUME~1\Murali_Krishna05\Local Settings\Temp/tmpxft_000008cc_00000000-1 

Répondre

1

Je l'ai résolu en remplaçant le Varialble environnement « TEMP = % USERPROFILE% \ Paramètres locaux \ Temp "par" TEMP =% SystemRoot% \ TEMP ".

0

Il s'agit d'un ancien bogue de l'intégration de NVIDIA VS2008 known. Nous avons dû faire toutes les 3 étapes suivantes pour le résoudre.

  1. set TEMP=%SystemRoot%\TEMP
  2. contrôle et potentiellement set PATH= pour éviter les guillemets " qui sont de toute façon superflue (et dangereux!). Il suffit de les supprimer: répertoires individuels sont séparés par un point virgule ; et les espaces ne sont pas un problème
  3. (en supposant que vous avez VS2008 installé dans l'emplacement par défaut et cibler les plates-formes habituelles Win64 et Win32) il suffit de remplacer la première paire de parenthèses ( et ) dans "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat" et "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat"

exemple pour l'étape 3:

Remplacer

@if not "%WindowsSdkDir%" == "" (
    set "PATH=%WindowsSdkDir%bin;%PATH%" 
    set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%" 
    set "LIB=%WindowsSdkDir%lib;%LIB%" 
) 

par

@if "%WindowsSdkDir%" == "" @goto :SKIP_SET_SDK 
set "PATH=%WindowsSdkDir%bin;%PATH%" 
set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%" 
set "LIB=%WindowsSdkDir%lib;%LIB%" 
:SKIP_SET_SDK