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

 
 

bug #31847: Random errors with parallel build

Submitter:  None
Submitted:  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
* Mandatory Fields

Add a New Comment Rich Markup
   

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>
Group 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...

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."

Anonymous
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

Anonymous
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>
Group 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.

Anonymous

 

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

Attach Files:
   
   
Comment:
   

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)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    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.13-3230.
    Corresponding source code