libjava broken vs make -j?

Dave Korn dave.korn.cygwin@googlemail.com
Thu Aug 27 01:22:00 GMT 2009


Andrew John Hughes wrote:
> 2009年8月26日 David Daney:
>> Dave Korn wrote:
>>> I just started seeing this, with "make -j4":

>>>> make[3]: Entering directory `/gnu/gcc/obj-java2/i686-pc-cygwin/libjava'
>>>> make[3]: *** No rule to make target `classpath/lib/compile-classes',
>>>> needed by `gcjh.stamp'. Stop.
>>>> make[3]: Leaving directory `/gnu/gcc/obj-java2/i686-pc-cygwin/libjava'
>>>> make[2]: *** [headers.stamp] Error 2

>>> There is indeed no rule to make classpath/lib/compile-classes, as it's
>>> generated in a recursive sub-make (which would happen earlier in a
>>> non-parallel build, or at lower -j levels, rather than simultaneously and
>>> racily as here). Presumably we need to add some dependency at the top
>>> level, perhaps something like this?
>>>>>> classpath/lib/compile-classes: all-multi
>>>>> Interesting, I have been doing -j16, -j14, and -j2 builds and have not hit
>> this.

> I also do builds using -j9 and haven't seen such issues, but this is
> on x86_64-pc-linux-gnu rather than cygwin.

 Nah, sorry for the noise. I definitely went about adding a dependency
wrongly, with the result of dragging half the recursive dependencies up to the
top-level. I think I want to append to "all-am:", not "all:", and most
probably the simplest way to do that validly is to add the phony stamp file
target to noinst_DATA.
 cheers,
 DaveK


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /