Opened 15 years ago
Closed 15 years ago
#59 closed defect (fixed)
"make clean" will crash CMD.EXE
Reported by: | rudi | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | Qt GA |
Component: | General | Version: | 4.5.1 Beta 1 |
Severity: | Keywords: | ||
Cc: |
Description
During the processing of "make clean" CMD.EXE will crash leaving behind a 100%-CPU-eating zombie process. The reason for this is, that CMD.EXE can't handle "del" commands with huge file lists as they are emitted by the makefile.
I don't know, if it is possible to instruct GNU make not split these into multiple commands. If not, we should not use "del" in our qmake.conf. Instead we should use "rm" and either force the user to install GNU file utils or provide a script/executable for that.
Change History (6)
comment:1 by , 15 years ago
comment:2 by , 15 years ago
Milestone: | → Qt GA |
---|
comment:3 by , 15 years ago
a good example to see the crash is in smplayer.
make distclean will show it
comment:4 by , 15 years ago
Arrgh, I just had to reboot my machine again for this very reason.
Please add the OS/2 specific command line length to:
qmake\generators\makefile.cpp line 1815:
...
const int commandlineLimit = 2047; NT limit, expanded
...
It might also be useful to add the output redirection for the
"del" command a few lines below:
if(!cleans.isEmpty()) { if(Option::target_mode == Option::TARG_OS2_MODE ) t << valGlue(cleans, "\n\t" + del_statement, " >nul 2>&1\n\t" + del_statement, " >nul 2>&1"); else t << valGlue(cleans, "\n\t" + del_statement, "\n\t" + del_statement, ""); }
comment:5 by , 15 years ago
Ok, I found the problem. I only fixed these things in winmakefile.cpp but not in makefile.cpp. Thank you for the hints, rudi! The fixes are in (r189), please check.
comment:6 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
I believe I did a patch that would cause multiple del lines to be generated instead of just one. I will check it again.