我在WIN7 PC上运行make我的项目并收到以下错误:
make: Interrupt/Exception caught (code = 0xc0000005, addr = 0x0040b0ac)
当删除一些制作部件时,似乎以下行是有问题的:
$(shell if exist $(1) echo YES)
任何想法似乎都是问题?溶液
谢谢!
更新
我正在使用gnu make 3.81.1 mingw32,同样的make和makefile用于我以前的WIN XP(32位),升级到WIN7后出现问题。
答案 0 :(得分:3)
好的,我想我已经得到了它。
如果我更换" shell"它显然与PATH有关。具有预定义的命令:
_SHELL=C:/Windows/System32/cmd.exe
问题得到解决。可能是因为severl c:\ Program Files PATH实例。
升级到3.82也解决了这个问题,所以我想已经修复了
谢谢!
答案 1 :(得分:0)
可以为Windows构建GNU make的方法有很多种,并且不同的方法将为$(shell ...)
命令使用不同的shell。我实际上并不知道是否有人会调用Windows command.com。
但无论如何,看起来你的GNU版本似乎不能以这种方式正常工作。你应该更新你的GNU制作地点的问题(cygwin?mingw?)或你如何构建它,如果你自己构建它。
您也可以在make-w32@gnu.org邮件列表中询问,GNU的Windows用户可以在这些邮件列表中使用。