Occasionally after a rebuild from scratch with a make -j3, I come across the following build error which dissapears after another make right afterwards: lib/dw/DwException => lib/dw/DwException.h source='../../frysk/frysk-imports/lib/dw/cni/DwException.cxx' object='lib/dw/ cni/DwException.o' libtool=no \ DEPDIR=.deps depmode=none /bin/sh ../../frysk/frysk-imports/depcomp \ g++ -DPACKAGE_NAME=\"frysk\" -DPACKAGE_TARNAME=\"frysk\" - DPACKAGE_VERSION=\"0.0.1.2007.04.25\" -DPACKAGE_STRING=\"frysk\ 0.0.1.2007.04.25\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"frysk\" - DVERSION=\"0.0.1.2007.04.25\" -I. -I../../frysk/frysk-imports -I../../frysk/ frysk-imports -I../../frysk/frysk-imports/../frysk-imports -I. -I../../frysk/ frysk-imports/../frysk-imports/elfutils/libelf -I../../frysk/frysk-imports/../ frysk-imports/elfutils/libdw -I../../frysk/frysk-imports/../frysk-imports/ elfutils/libdwfl -I../../frysk/frysk-imports/../frysk-imports/libunwind/include -I./../frysk-imports/libunwind/include -fPIC -I../../frysk/frysk-imports/ include -g -O -Wall -Werror -c -o lib/dw/cni/DwException.o ../../frysk/frysk- imports/lib/dw/cni/DwException.cxx ../../frysk/frysk-imports/lib/dw/cni/DwException.cxx:41:35: error: lib/dw/ DwarfException.h: No such file or directory ./lib/dw/DwException.h:22: error: expected class-name before ‘{’ token ./lib/dw/DwException.h:31: error: ‘DwarfException’ is not a member of ‘lib::dw’ ./lib/dw/DwException.h:31: error: requested alignment is not a constant make[3]: *** [lib/dw/cni/DwException.o] Error 1 make[3]: *** Waiting for unfinished jobs.... lib/dw/DwarfException => lib/dw/DwarfException.h make[3]: Leaving directory `/home/varg/mult/build/frysk-imports' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/varg/mult/build/frysk-imports' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/varg/mult/build/frysk-imports' make: *** [all-recursive] Error 1
Likely the file is making an indirect instead of explicit include of a generated header leading to a race between the header's generation and its inclusion. Check that all relevant headers are explicitly included by that file.
2007-06-14 Andrew Cagney <cagney@redhat.com> * cni/DwException.cxx: Use "" and not <> for local includes.