| Summary: | gcc-cross-canadian-x86-64 do_install failure | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Alexandre Belloni <alexandre.belloni> |
| Component: | devtools / tool chain | Assignee: | Richard Purdie <richard.purdie> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium+ | CC: | alexandre.belloni, meta.mr.watcher, meta.watcher, randy.macleod, richard.purdie |
| Version: | unspecified | ||
| Target Milestone: | 4.2 M1 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | AB-INT | ||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
|
Description
Alexandre Belloni
2022-10-31 23:15:01 UTC
$ cat gengtype-lex.cc #include "config.h" #else #include "bconfig.h" #endif #ifdef HOST_GENERATOR_FILE which compared to my local build is completely wrong. Something has corrupted the file which is why the two builds fail, the question then becomes how did this file in the shared workdir become corrupted. It may be related to the presence or lack of presence of flex and the file being regenerated in some cases? log.do_install.2834110 contains:
flex -o../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.l && { \
echo '#ifdef HOST_GENERATOR_FILE' > ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#include "config.h"' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#else' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#include "bconfig.h"' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#endif' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
cat ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
mv ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc; \
log.do_install.2834128 contains:
flex -o../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.l && { \
echo '#ifdef HOST_GENERATOR_FILE' > ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#include "config.h"' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#else' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#include "bconfig.h"' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
echo '#endif' >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
cat ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc >> ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp; \
mv ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc.tmp ../../../../../../../work-shared/gcc-12.2.0-r0/gcc-12.2.0/gcc/gengtype-lex.cc; \
so likely a race between them?
My local build has flex in the recipe sysroot but doesn't regenerate this file. I'm not sure why it thought it needed to regenerate gengtype-lex.cc on the autobuilder build. There were several issues. The gengtype regeneration code in gcc hadn't been updated with the .c -> .cc file move in upstream. The gcc shared workdir was also causing timestamp problems in general as the SDE wasn't propagating to the recipe workdir. If that is fixed, the gengtype file deletion can also simply be removed. Patches on the list doing all that which should resolve this issue. https://git.yoctoproject.org/poky/commit/?id=4b80c6cdc01e3aa2d5971b880e33f360feaa528d https://git.yoctoproject.org/poky/commit/?id=b964727e3a33d2d990891719dda2863198e8f861 https://git.yoctoproject.org/poky/commit/?id=82d294860b07a0726664b1ac1e9db6517ae25fca https://git.yoctoproject.org/poky/commit/?id=2cdaa164e8b4618a82ccd3fcb87cf58e36b6d6d3 |