help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Hangs on windows after "include"


From: Greg Chicares
Subject: Re: Hangs on windows after "include"
Date: Fri, 19 May 2006 23:41:26 +0000
User-agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)

On 2006-5-19 22:33 UTC, Cesar Crusius wrote:
> 
> Here's the problem: on Windows (and on Windows only), in some cases make 
> hangs 
> after the last dependency is generated. The exact point of hanging I don't 
> know,

Perhaps you could instrument it with lots of 'echo' commands, or
capture the output of 'make -d'.

> but the CPU is idle after that and make sits there doing nothing 
> (running 3.80 here).

It would seem natural to try this with make-3.81 . I can't offer a
reason why that would make a difference, but the observed behavior
seems mysterious enough that this might be worth a try.

I just saw a report (elsewhere) of a mysterious hang that was
attributable to a webcam driver:
  http://sourceforge.net/mailarchive/message.php?msg_id=15716052
You can rule that out quickly if you don't have a logitech webcam.

Years ago I had a problem with defective hardware:
  http://www.bitwizard.nl/sig11/
which often manifested itself by generating zero-byte dependency
files--which, if not removed, had very unpleasant consequences.
But if you have that problem, you're likely to see many errors
with other memory-intensive programs.

> Interrupting the build and starting again (with 
> dependencies already generated) results in no more hangs, so I assume it has 
> to do with the interplay of dependency making and the include statement. Any 
> clues?
> 
> For reference, $(make-dep) expands to
> 
> make-dep = $(SHELL) -ec \
> 'makedepend $(includes) -o$(objext) -f- $< 2>/dev/null | \
> sed '\''s%^.*:%$(@:%.d=%$(objext)) $@: %g'\'' > $@'

Not long ago I experienced a mysterious hang when running make, and
I found a cryptic clue in something that was redirected into a file
that I had at first disregarded. Maybe suppressing '2>/dev/null' or
redirecting stderr elsewhere will reveal something.

You could also try a different method of generating dependencies,
such as the one in the make manual, at least as an experiment.

> for Windows builds, which runs unxutils (http://unxutils.sourceforge.net/).

You might try substituting a different toolkit--Cygwin or MSYS--and
see whether that helps.

Maybe someone more skillful can put these facts together:

> [...] in some cases make hangs
> after the last dependency is generated.
> [...] Interrupting the build and starting again (with
> dependencies already generated) results in no more hangs

and come up with a brilliant insight that eludes me.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]