2011-11-14 27 views
26

Sto cercando di compilare un programma di test CUDA su Windows 7 tramite il prompt dei comandi, io sono questo comando:Errore durante la compilazione CUDA dal Prompt dei comandi

nvcc test.cu 

Ma tutto quello che ottiene è questo errore:

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

Che cosa potrebbe causare questo errore?

+0

se si ottiene un altro errore "Impossibile trovare corecrt.h" dopo aver risolto questo problema, consultare https://stackoverflow.com/questions/38290169/cannot-find-corecrt-h- universalcrt-includingepath-is-wrong –

risposta

27

Sarà necessario aggiungere la cartella contenente il file "cl.exe" alla variabile d'ambiente percorso . Per esempio:

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

Edit: Ok, andare a Risorse del computer -> Proprietà -> Avanzate Impostazioni di sistema -> Variabili d'ambiente. Qui cerca "PATH" nell'elenco e aggiungi il percorso sopra (o qualunque sia la posizione del tuo cl.exe).

+0

Ok, ma come aggiungerlo? Sono abituato a lavorare su Linux, quindi non sono più in grado di utilizzare Windows ora ... – Imperian

+0

Bene, ma ora ho un altro errore: 'nvcc fatale: il file di configurazione di Visual Studio '(null)' non può essere trovato per l'installazione su 'C: \ Programmi (x86) \ Microsoft Visual Studio 9.0 \ VC \ bin /../ ..' ' – Imperian

+1

Nevermind, mi sono sbarazzato di esso solo passando --machine 32 come parametro per nvcc – Imperian

3

cl.exe è il compilatore C/C++ di Microsoft. Quindi il problema è che non hai installato quello dove la riga di comando può trovarlo.

1

nvcc è solo un front-end per la parte specifica del programma CUDA. È necessario richiamare un compilatore completo per completare il lavoro. In questo caso non riesce a trovare lo Studio compilatore 'cl.exe' Visual

Controlla i percorsi, la documentazione nvcc ecc

0

Vedo che questa è una vecchia domanda ma di recente ho riscontrato questo errore sul mio Visual Studio 2012 quando ho provato a creare il mio progetto CUDA. A quanto pare ho cambiato il mio progetto CUDA nel pacchetto Nov 2012, cambiandolo di nuovo alla v110 che di solito è per default risolto da questo errore.

In Visual Studio, fare clic con il tasto sinistro del mouse sul progetto CUDA, -> Proprietà-> Proprietà di configurazione-> Generale -> Set di strumenti della piattaforma e scegliere: Visual Studio 2012 (v110).

Probabilmente potrei farlo funzionare con il pacchetto Nov 2012, ma il codice CUDA non usa nessuna delle funzioni aggiuntive di quel pacchetto, quindi non è necessario. (Questo pacchetto contiene i modelli variadic per C++ 11).

10

risolvere questo problema con l'aggiunta di questa opzione per nvcc

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

per esempio il mio compilatore è VS2012. e cl.exe si trova in questa dir

+0

Puoi chiarire cosa intendi con "modificare questo problema"? – skrrgwasme

+0

scusa dovrei scrivere risolvere non modificare: D scusa per il mio inglese. –

+0

L'aggiunta della cartella '\ VC \ bin \' alla variabile d'ambiente PATH non ha funzionato per me (Win7). La tua soluzione, tuttavia, ha funzionato bene! Stavo cercando di compilare un codice per MATLAB. Grazie! –

Problemi correlati