bugmake - Bugs: bug #31847, Random errors with parallel build


bug #31847: Random errors with parallel build

Submitted by:  None
Submitted on:  Fri 10 Dec 2010 03:55:08 PM UTC  
Severity:  3 - Normal Item Group:  Bug
Status:  Duplicate Privacy:  Public
Assigned to:  None Open/Closed:  Closed
Component Version:  3.81 Operating System:  POSIX-Based
Fixed Release:  None Triage Status:  None

Add a New Comment (Rich Markup)

You are not logged in

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


Mon 10 Sep 2012 05:08:45 AM UTC, comment #5: 

Based on the comments here I believe this is a duplicate of bug #30653

Paul D. Smith <psmith>
Project Administrator
Mon 24 Oct 2011 05:08:20 PM UTC, comment #4: 

Providing a specific target for each .o seems to workaround the issue. So the failing example contains this rule...

# Link apps
app%: app%.o lib.a
${CC} ${@:app%=app%.o} lib.a -o $@

The problem is that app1 may be linked before app1.o have been created. The workaround is to add an explicit target for app1.o...


I think this workaround might be effective because it prevents the file from being treated as intermediate. The manual says this, "a file cannot be intermediate if it is mentioned in the makefile as a target or prerequisite."

Sat 02 Jul 2011 11:32:25 PM UTC, comment #3: 

I think this is also in 3.80: we have a complex make system and we tried hard to check all dependencies but could never get make to work reliably in parallel mode (we use high numbers, say between 8 and 24, so it makes a big difference for us to not be able to make use of this feature).

Happy to help track it down if I can, just let me know what's needed

Luca Fascione

Luca Fascione <lukesonsavannah>
Tue 14 Dec 2010 09:41:29 PM UTC, comment #2: 

Yes, the problem also exists in 3.82

Fri 10 Dec 2010 04:02:31 PM UTC, comment #1: 

Have you tried with the latest version (GNU make 3.82)?

Paul D. Smith <psmith>
Project Administrator
Fri 10 Dec 2010 03:55:08 PM UTC, original submission:  

The Makefile shown below sometimes fails to build the main target (app1). All required files are in the attached .tar file. To reproduce the error, make sure app1.o does not exist, then run "make -j2 app1" repeatedly.

On my machine (Intel core i5 551, openSuSE 11.3, make 3.81) make fails after a few retries, because the link command is invoked before app1.o is compiled.



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

Attach Files:

Attached Files
file #22173:  make_bug.tar added by None (10KiB - application/x-tar)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by lukesonsavannah (Posted a comment)
  • -email is unavailable- added by psmith (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 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2012-09-10 psmith StatusNone => Duplicate
        Open/ClosedOpen => Closed
    2010-12-10 None Attached File- => Added make_bug.tar, #22173

    Back to the top

    Powered by Savane 3.6