No rule to make foo.cpp needed by foo.o ???
martinrb at google.com
Tue Dec 22 02:53:10 UTC 2009
On Mon, Dec 21, 2009 at 18:42, David Holmes - Sun Microsystems
<David.Holmes at sun.com> wrote:
> Igor Nekrestyanov said the following on 12/22/09 11:45:
>> Check the output of "gnumake -dd" looking for everything related to files
>> in question. It will tell you why rules are not fired.
> Surprisingly the answer was because "Foo.cpp does not exist" which of course
> is nonsense.
> I'm guessing this must be some kind of NFS caching issue. I rsync the
> updated files to the build location and then run the build on another
If the problem goes away if you add a
after the NFS copy, you are probably right.
NFS has always worked thus.
It is just like the consistency considerations with the
java memory model, except that the cache lifetimes
are typically much longer.
You can fix it by rsyncing to the machine where the
build will happen, so that there will be no caching
of stale bits.
More information about the build-dev