windows下使用GNU make命令报错的解决方法=> 错误信息:make: Interrupt/Exception caught (code = 0xc00000fd, addr = 0x4227d3) ## 1.原因环境变量中配置了`D:\Program Files (x86)\Git\bin`,该目录下存在一个`sh.exe` 在执行make命令时,如果在`MakeFile`文件中没有指定shell的路径,`make`就会到环境变量中,去找一个`X:\\XXX\XXX\sh.exe`作为它的默认shell> 原文```The program used as the shell is taken from the variable SHELL. If this variable is not set in your makefile, the program /bin/sh is used as the shell. The argument(s) passed to the shell are taken from the variable .SHELLFLAGS. The default value of .SHELLFLAGS is -c normally, or -ec in POSIX-conforming mode.```> 参考:https://www.gnu.org/software/make/manual/html_node/Choosing-the-Shell.html 而由于环境变量中配置了`D:\Program Files (x86)\Git\bin`,令到make就取了‘D:\Program Files (x86)\Git\bin\sh.exe‘作为它的shell 而在windows下,是要以`C:\Windows\System32\cmd.exe`作为shell的,所以就产生了标题所示的报错 ## 2.解决方法在`MakeFile`文件最初的位置,添加:```makefileSHELL=C:\Windows\System32\cmd.exe```
时间: 2024-10-06 21:20:39