| Summary: | aclocal loses track of .m4 causing task do_configure to fail (gmp as illustrated here) | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] Meta-yocto | Reporter: | Dexuan Cui <dexuan.cui> |
| Component: | meta-yocto | Assignee: | Richard Purdie <richard.purdie> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | liangliang.wang, meta.mr.watcher, meta.watcher, poky.bs.watcher, poky.watcher, richard.purdie, yi.zhao |
| Version: | 1.0 | ||
| Target Milestone: | 1.1 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | --- | |
|
Description
Dexuan Cui
2011-03-13 22:53:53 UTC
(In reply to comment #0) > Looks we need to add a dependency on flac. > ... > | aclocal: aclocal: file > `/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/qemux86/usr/share/aclocal/libFLAC.m4' > does not exist > | autoreconf: aclocal failed with exit status: 1 > | FATAL: autoreconf execution failed. > NOTE: package gmp-5.0.1-r0: task do_configure: Failed > NOTE: package flac-1.2.1-r0: task do_configure: Started BTW: I can't reproduce the issue locally. gmp is an arithmetic library, I don't think it could depend on flac, an audio codec. I'm not sure what happened here. This probably happens if something removes a .m4 file such as the one for flac whilst a do_configure is running, iterating over the files. We do probably need to find a way to avoid this but equally, this bug will only affect incremental builds and they will succeed afterwards. With 20100506-4 build on autobuilder git info: 856a5e496b7ddd814f6a94552d02074f0ab30842 This issue caused x86_64-arm toolchain build failure. The package gmp-nativesdk was build failed. ERROR: Logfile of failure stored in: /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/work/x86_64-nativesdk-pokysdk-linux/gmp-nativesdk-5.0.1-r0/temp/log.do_configure.3621 Log data follows: | automake (GNU automake) 1.11.1 | Copyright (C) 2009 Free Software Foundation, Inc. | License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl-2.0.html> | This is free software: you are free to change and redistribute it. | There is NO WARRANTY, to the extent permitted by law. | | Written by Tom Tromey <tromey@redhat.com> | and Alexandre Duret-Lutz <adl@gnu.org>. | AUTOV is 1.11 | NOTE: Executing autoreconf --verbose --install --force --exclude=autopoint -I/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-linux/usr/share/aclocal-1.11 -I /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux/opt/poky/1.0+snapshot/sysroots/x86_64-pokysdk-linux/usr/share/aclocal | autoreconf: Entering directory `.' | autoreconf: configure.in: not using Gettext | autoreconf: running: aclocal -I /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-linux/usr/share/aclocal-1.11 -I /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux/opt/poky/1.0+snapshot/sysroots/x86_64-pokysdk-linux/usr/share/aclocal -I /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-linux/usr/share/aclocal-1.11 -I /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux/opt/poky/1.0+snapshot/sysroots/x86_64-pokysdk-linux/usr/share/aclocal --force | autoreconf: configure.in: tracing | autoreconf: running: libtoolize --copy --force | libtoolize: putting auxiliary files in `.'. | libtoolize: copying file `./ltmain.sh' | libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and | libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. | libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. | libtoolize: `AC_PROG_RANLIB' is rendered obsolete by `LT_INIT' | autom4te: /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux/opt/poky/1.0+snapshot/sysroots/x86_64-pokysdk-linux/usr/share/aclocal/argz.m4: no such file or directory | aclocal: /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/x86_64-linux/usr/bin/autom4te failed with exit status: 1 | autoreconf: aclocal failed with exit status: 1 | ERROR: autoreconf execution failed. | ERROR: Function 'do_configure' failed (see /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/work/x86_64-nativesdk-pokysdk-linux/gmp-nativesdk-5.0.1-r0/temp/log.do_configure.3621 for further information) | ERROR: Function 'do_configure' failed (see /srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/work/x86_64-nativesdk-pokysdk-linux/gmp-nativesdk-5.0.1-r0/temp/log.do_configure.3621 for further information) NOTE: package gmp-nativesdk-5.0.1-r0: task do_configure: Failed For more details, please see: http://autobuilder.pokylinux.org:8010/builders/nightly-external/builds/117/steps/shell_47/logs/stdio Two solution ideas for this: a) We add locking around the m4 files so when autoreconf is running, nothing can touch the sysroots. It will badly impact performance b) We make a copy of the m4 files to a temporary directory (hardlink?) and then work against the copy. *** Bug 1200 has been marked as a duplicate of this bug. *** |