[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNU make 3.81beta4 released
From: |
Eli Zaretskii |
Subject: |
Re: GNU make 3.81beta4 released |
Date: |
Mon, 16 Jan 2006 01:20:57 -0500 |
> From: "Markus Mauhart" <address@hidden>
> Date: Sat, 14 Jan 2006 23:58:49 +0100
>
> Unfortunately for the project I'm currently interested I get the same strange
> behaviour as recently when I for myself removed the if-w32-disable-j-code.
> It seems to be a combination of my "complicated" makefile stressing gmake
> generally, then stressed w32-code paths, stressed "-j"-codepaths, ...
> Without "-j [n] under w32", it workes flawless since 1 year, nevertheless
> it may be some bug in my makefile.
If the build works without -jN, the first thing to suspect is the
Makefile. However, Make should not crash, even if your Makefile is
wrong; it is allowed to fail to produce the targets, but it is not
allowed to crash.
> 2) inside cmd.exe, using my trivial or your current patch:
> "make -f Mymakefile -j 2or3orMore" ... executes like no "-j" had been used.
Is your Makefile recursive? If so, see my questions to Paul: it
sounds like sub-Makes get -j1 switch for some reason, it's not yet
clear to me if that's by design or through some bug/mis-feature.
> "make -f Mymakefile -j"
> two kinds of nonsense happen:
>
> Mymakefile running in mode 1, make creates 100-1000 bat files, executes
> 10-100 of them, then make.exe hanges, consuming its complete CPU, having no
> process childs..
At this point, when it hangs like that, how about if you attach a
debugger to it and see where it loops, and why?
> Mymakefile running in mode 2, make creates some 100 bat files, then ...
What are ``mode 1'' and ``mode 2'', and how are they related to the
issue of -jN?
> make.cvs.20060114.j_patch.mss.exe[1]: touch: open:
> out/plugin/ndisasm/vc.Gui.Sh/disasm.obj: No such file or directory
> make.cvs.20060114.j_patch.mss.exe: Interrupt/Exception caught (code =
> 0xc0000005, addr = 0x398)
> make.cvs.20060114.j_patch.mss.exe: *** [all] Error 255
Your Make is built with a Microsoft compiler, right? If so, can you
set up a JIT debugging environment, so that when it crashes like
above, a debugger is launched and attached to the crashing Make? Then
please see where it crashes, look around a bit with a debugger to see
why, and come back here to tell what you saw.
(FWIW, I suspect that we launch too many sub-processes, since
getloadavg is a no-op for Windows; then some system resources are
depleted, some system call fails, but Make fails to notice that, and
blithely tries to continue. But that's a guess, and it doesn't
explain why it works with Cygwin.)
- Re: GNU make 3.81beta4 released, J. Grant, 2006/01/01
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/10
- Re: GNU make 3.81beta4 released, J. Grant, 2006/01/10
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/11
- Re: GNU make 3.81beta4 released, Paul D. Smith, 2006/01/13
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/14
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/14
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/14
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/14
- Re: GNU make 3.81beta4 released,
Eli Zaretskii <=
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/16
- Re: GNU make 3.81beta4 released, J. Grant, 2006/01/16
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/16
- Re: GNU make 3.81beta4 released, Earnie Boyd, 2006/01/17
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/17
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/17
- Re: GNU make 3.81beta4 released, Earnie Boyd, 2006/01/17
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/18
- Re: GNU make 3.81beta4 released, Eli Zaretskii, 2006/01/16
- Re: GNU make 3.81beta4 released, Markus Mauhart, 2006/01/17