Estoy usando Make de la distribución MinGW. Siempre ha funcionado, pero recientemente recibí el siguiente error:
> make clean
make: Interrupt/Exception caught (code = 0xc0000005, addr = 0x0040b0ac)
Y la parte respectiva se ve así:
clean:
del /S /Q *.o > nul
del /S /Q *.cy.c > nul
del /S /Q *.pyc > nul
del /S /Q *.pyo > nul
if EXIST build (rmdir /S /Q dist > nul)
No tengo idea de qué causa esto. Especialmente porque siempre ha funcionado perfectamente bien.
Respuestas:
Estaba empezando a tener una excepción también:
Podría ser una razón diferente, pero este problema es aparentemente causada cuando la variable PATH contiene paréntesis
(
,)
como lo hace en Windows Vista / 7. Desafortunadamente, el GNU disponible para Windows está irremediablemente desactualizado.Mi problema se solucionó forzando a
make
usar el shell correcto: inserte la siguiente línea al comienzo de su archivo MAKE.fuente
C:\Program Files
conC:\PROGRA~1
yC:\Program Files (x86)
conC:\PROGRA~2
solucionó el problema para mí. +1 :-)sh: C:\Program: No such file or directory
es la primera línea que obtengo si no paso laSHELL
variable. Básicamente, cada instancia de "Archivos de programa" en la RUTA contiene un espacio que no se escapa correctamente (en lo que respecta a la marca). No es la longitud del camino, sino los espacios los que causan este problema. Esto explica por qué usar una macro sin espacios lo arregló.Tuve ese problema cuando agregué el directorio bin de Git a la
PATH
variable de entorno. La razón parece ser que Git se envía con una versión de MSYS y parece estar en conflicto con MinGW (tal vez no entre en conflicto cuando es la versión correcta de MSYS y / o MinGW, pero eso es solo adivinar).Así que asegúrese de que no haya (otra) distribución de MSYS en su
PATH
.fuente
Además de la respuesta de Norbet P., descubrí que agregar:
en la parte superior de mi Makefile solucionó este problema en particular para mí.
fuente
Este
make
error se corrige al menos en.
fuente
Utilicé GnuWin hasta que me di cuenta de que el último lanzamiento se publicó en 26 de noviembre de 2006 . Eso es un poco aburrido y causó problemas como se ve arriba. La configuración de SHELL = C: /Windows/System32/cmd.exe resuelve algunos problemas, pero ejecutar ese código antiguo en sistemas operativos nuevos se siente inseguro
MinGw es una apuesta más segura. MinGw es el acrónimo de "Minimalist GNU for Windows" y está actualizado e incluye make y otras herramientas
http://sourceforge.net/projects/mingw/files/
fuente
El código de error de Windows
0xC0000005
indica una infracción de acceso o un fallo de segmentación.fuente
Noté en mis registros de compilación que "SHELL = sh" se estaba pasando a hacer, a pesar de que estoy en la plataforma de Windows. Mi Makfile se veía así:
ifneq (, $ (findtring win, $ (RDI_PLATFORM))) SHELL = CMD endif
Una vez que comenté el ifneq y terminé, comenzó a funcionar. No estoy seguro de por qué la plataforma no se interpretó correctamente.
fuente