it-swarm.com.de

Fehler beim Kompilieren von CUDA von der Eingabeaufforderung

Ich versuche, ein cuda-Testprogramm unter Windows 7 über die Eingabeaufforderung.

nvcc test.cu

Aber alles was ich bekomme ist dieser Fehler:

nvcc fatal : Cannot find compiler 'cl.exe' in PATH

Was kann diesen Fehler verursachen?

31
Imperian

Sie müssen den Ordner mit der Datei "cl.exe" Ihrer Pfadumgebungsvariablen hinzufügen. Zum Beispiel: 

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

Bearbeiten : OK, gehe zu Arbeitsplatz -> Eigenschaften -> Erweiterte Systemeinstellungen -> Umgebungsvariablen. Suchen Sie hier nach "PATH" in der Liste und fügen Sie den Pfad oben ein (oder den Speicherort Ihrer cl.exe).

35
Tudor

Lösen Sie dieses Problem, indem Sie diese Optionen zu nvcc hinzufügen

nvcc x.cu ...   -ccbin "D:\Program Files\Microsoft Visual Studio 11.0\VC\bin"

mein Compiler ist zum Beispiel VS2012. und cl.exe befindet sich in diesem Verzeichnis

15
Prof. Hell

cl.exe ist der C/C++ - Compiler von Microsoft. Das Problem ist also, dass Sie das nicht installiert haben, wo die Befehlszeile es finden kann.

3
Chris Dodd

nvcc ist nur ein Frontend für den CUDA-spezifischen Teil des Programms. Es muss einen vollständigen Compiler aufgerufen werden, um den Job abzuschließen. In diesem Fall kann der Visual Studio-Compiler 'cl.exe' nicht gefunden werden. 

Überprüfen Sie die Pfade, nvcc-Dokumentation usw.

1
Steve Fallows

Ich sehe, dass dies eine alte Frage ist, aber ich habe kürzlich diesen Fehler in Visual Studio 2012 erhalten, als ich versuchte, mein CUDA-Projekt zu erstellen. Anscheinend hatte ich mein CUDA-Projekt in das Nov 2012-Paket geändert und es wieder in die Version 110 geändert. Normalerweise ist dieser Fehler standardmäßig behoben. 

Klicken Sie in Visual Studio mit der linken Maustaste auf das CUDA-Projekt, -> Eigenschaften -> Konfigurationseigenschaften -> Allgemein -> Plattform-Toolset, und wählen Sie: Visual Studio 2012 (v110).

Ich könnte es wahrscheinlich mit dem Nov 2012-Paket arbeiten lassen, aber der CUDA-Code verwendet keine der zusätzlichen Funktionen dieses Pakets und ist daher nicht erforderlich. (Dieses Paket enthält die variadischen Vorlagen für C++ 11.)

0
Donna