ultima mac cnn cuda nvidia

mac - cuda wikipedia



Error al compilar CUDA desde el símbolo del sistema (5)

Estoy tratando de compilar un programa de prueba cuda en Windows 7 a través del símbolo del sistema, soy este comando:

nvcc test.cu

Pero todo lo que consigo es este error:

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

¿Qué puede estar causando este error?


Deberá agregar la carpeta que contiene el archivo "cl.exe" a su variable de entorno de ruta. Por ejemplo:

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

Edición : Ok, vaya a Mi PC -> Propiedades -> Configuración avanzada del sistema -> Variables de entorno. Aquí busque "PATH" en la lista, y agregue la ruta anterior (o cualquiera que sea la ubicación de su cl.exe).


Resuelva este problema agregando estas opciones a nvcc

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

por ejemplo mi compilador es VS2012. y cl.exe está en este directorio


Veo que esta es una pregunta antigua pero recientemente recibí este error en mi Visual Studio 2012 cuando intenté construir mi proyecto CUDA. Aparentemente, cambié mi proyecto CUDA al paquete de noviembre de 2012, cambiándolo de nuevo a la v110 que, por lo general, corrige este error de forma predeterminada.

En Visual Studio, haga clic izquierdo en el proyecto CUDA, -> propiedades-> Propiedades de configuración-> General -> Conjunto de herramientas de plataforma, y ​​elija: Visual Studio 2012 (v110).

Probablemente podría hacerlo funcionar con el paquete de noviembre de 2012, pero el código CUDA no utiliza ninguna de las funciones adicionales de ese paquete, por lo que no es necesario. (Ese paquete contiene las plantillas variadic para C ++ 11).


nvcc es solo una interfaz para la parte específica del programa CUDA. Debe invocar un compilador completo para terminar el trabajo. En este caso no puede encontrar el compilador de Visual Studio ''cl.exe''

Compruebe las rutas, documentación nvcc etc.


cl.exe es el compilador de C / C ++ de Microsoft. Entonces, el problema es que no tiene eso instalado donde la línea de comandos puede encontrarlo.