[OE-core] Tell me your build error message annoyances!
Richard Purdie
richard.purdie at linuxfoundation.org
Thu Jun 9 11:17:07 UTC 2011
On Thu, 2011-06-09 at 12:02 +0100, Phil Blundell wrote:
> After I made a typo (mismatched quotes) in one of my recipes, my next
> bitbake run printed:
>
> Loading cache: 100% |#####################################################################################################################################################| ETA: 00:00:00
> Loaded 1323 entries from dependency cache.
> NOTE: Error expanding variable do_configure | ETA: --:--:--
> ERROR: Command execution failed: Traceback (most recent call last):############################# | ETA: 00:00:00
> File "/home/pb/oe/bitbake/lib/bb/command.py", line 99, in runAsyncCommand
> self.cooker.updateCache()
> File "/home/pb/oe/bitbake/lib/bb/cooker.py", line 871, in updateCache
> if not self.parser.parse_next():
> File "/home/pb/oe/bitbake/lib/bb/cooker.py", line 1120, in parse_next
> self.shutdown(clean=False)
> File "/home/pb/oe/bitbake/lib/bb/cooker.py", line 1102, in shutdown
> bb.codeparser.parser_cache_save(self.cfgdata)
> File "/home/pb/oe/bitbake/lib/bb/codeparser.py", line 77, in parser_cache_save
> data, version = p.load()
> EOFError
>
> So, this is (a) confusing, because "EOFError" doesn't yield much
> information about the actual cause of the problem; (b) unhelpful, since
> it doesn't mention which line of the file (or even which recipe) was to
> blame; and (c) annoying, for the usual reasons to do with python
> traceback.
>
> Somewhat worse, even after I fixed the typo, any subsequent attempt to
> run bitbake would just result in:
>
> Loading cache: 100% |#####################################################################################################################################################| ETA: 00:00:00
> Loaded 1323 entries from dependency cache.
> Traceback (most recent call last): | ETA: --:--:--
> File "/usr/lib/python2.6/multiprocessing/util.py", line 235, in _run_finalizers
> finalizer()
> File "/usr/lib/python2.6/multiprocessing/util.py", line 174, in __call__
> res = self._callback(*self._args, **self._kwargs)
> File "/home/pb/oe/bitbake/lib/bb/codeparser.py", line 77, in parser_cache_save
> data, version = p.load()
> EOFError
>
> (repeated about 10 times)
>
> I deleted tmp/cache/* and that seemed to fix the problem.
FWIW, bitbake master has fixes for this specific issue and a number of
other codeparser performance related issues. If it meets EOF while
loading it will now just assume the cache file is corrupt and
ignore/rebuild it.
Cheers,
Richard
More information about the Openembedded-core
mailing list