Changes between Version 36 and Version 37 of Building/Troubleshooting


Ignore:
Timestamp:
May 19, 2013 7:57:58 PM (11 months ago)
Author:
igloo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Building/Troubleshooting

    v36 v37  
    2222ghc.mk:96: *** Make has restarted itself 3 times; is there a makefile bug?.  Stop. 
    2323}}} 
    24 Simon M says: this can happen if you modify something while tenhe build is in progress - I 
    25 see this quite often.  In this case the error is just overly conservative, and restarting is the right workaround. 
    26  
    27 pgj adds: This can also happen if you are building the sources on FreeBSD in a really fast environment, i.e. on a multi-core Xeon with multiple parallel threads ({{{make -j}}}) or a memory-backed file system ({{{mfs}}}, {{{tmpfs}}}), see #7592.  It is because precision of file timestamps is not fine-grained enough by default (due to the common VFS layer).  You can change this granularity by adjusting the value of the {{{vfs.timestamp_precision}}} sysctl(3) variable. 
    28  
    29 If you encounter this without touching any files after typing 'make', 
    30 then it's probably a bug in the build system.  Though unfortunately it's 
    31 going to be almost impossible to track down unless we can find a way to 
    32 reproduce it. 
     24then it could mean you have introduced a build system bug, causing an infinite loop. 
     25 
     26This can also happen (although we don't know precisely why) if you modify something in a built tree, and then re-run `make`. In this case the error is just overly conservative, and restarting is the right workaround. 
     27 
     28It can also happen if you are building the sources on FreeBSD in a really fast environment, e.g. on a multi-core Xeon with multiple parallel threads ({{{make -j}}}) or a memory-backed file system ({{{mfs}}}, {{{tmpfs}}}) (see #7592). It is because precision of file timestamps is not fine-grained enough by default (due to the common VFS layer).  You can change this granularity by adjusting the value of the {{{vfs.timestamp_precision}}} sysctl(3) variable (`sudo -w vfs.timestamp_precision=1`). 
     29 
     30If you encounter this without touching any files after typing 'make', then it's probably a bug in the build system. The `make -d` output will be useful in tracking it down, but depending on when it happens there might be a lot of it! 
    3331 
    3432== libraries/ghc-prim/GHC/PrimopWrappers.hs:48:18: Not in scope: `GHC.Prim.gcdInt#' ==