bugmake - Bugs: bug #38626, make fails on windows with...


bug #38626: make fails on windows with antivirus software

Submitted by:  None
Submitted on:  Fri 29 Mar 2013 03:09:03 PM UTC  
Severity:  3 - Normal Item Group:  Bug
Status:  Fixed Privacy:  Public
Assigned to:  None Open/Closed:  Closed
Component Version:  3.81 Operating System:  MS Windows
Fixed Release:  4.0 Triage Status:  Verified

Add a New Comment (Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Sat 27 Apr 2013 05:12:32 PM UTC, comment #1: 

Thanks for the report and the patch.

I think this bug is already solved in the git repository, albeit somewhat differently.  Make now always increments the counter of the batch files before trying to create a new batch file.  So if a file named make-NNNN-1.bat was already created in the current Make run (where NNNN is the PID of the Make process), the next batch file will be make-NNNN-2.bat; Make will not try reusing make-NNNN-1.bat, unless it tries all the 64K possible numbers, and starts reusing numbers it already used in the same run.

I needed this change for "make -j", where several batch files might be used simultaneously, and cannot possibly be deleted anyway, because some job is still using them.

So I'm closing this bug.  Please try the git code and see if the problem still persists.  If it does, please reopen this bug with details.

Eli Zaretskii <eliz>
Project Member
Fri 29 Mar 2013 03:09:03 PM UTC, original submission:  

When make runs on windows using batch files to execute external programs, it doesn't handle correctly situation when file creation fails because delete is still pending.
This behaviour of CreateFile is mentioned here: http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx
Make then fails with 'permission denied' (increasing user confusion)

This problem is quite rare, usual resolution is to disable antivirus software or try again. It is masked a bit because make first tries temporary directory, then ./, both must fail.

Attached is patch that waits before giving up.
On my system it does sometimes take nearly one second to create new file (Process Monitor from Sysinternals and search for 'DELETE PENDING' result).



(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

Attached Files
file #27717:  make.patch added by None (812B - application/octet-stream)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by eliz (Posted a comment)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2013-04-27 eliz StatusNone => Fixed
        Open/ClosedOpen => Closed
        Fixed ReleaseNone => 4.0
        Triage StatusNone => Verified
    2013-03-29 None Attached File- => Added make.patch, #27717

    Back to the top

    Powered by Savane 3.5