【问题标题】:exception while running bitbake运行 bitbake 时出现异常
【发布时间】:2019-05-23 17:57:48
【问题描述】:

使用 this guide 在 BitBake 中迈出第一步,设置工作正常,直到我运行 bitbake world 时,我得到了这个 -

    WARNING: python should use 4 spaces indentation, but found tabs in base.bbclass, line 41
....
    WARNING: python should use 4 spaces indentation, but found tabs in base.bbclass, line 64
    Parsing recipes: 100% |###########################################################################################################################################################################| Time: 0:00:00
    Parsing of 1 .bb files complete (0 cached, 1 parsed). 1 targets, 0 skipped, 0 masked, 0 errors.
    NOTE: Resolving any missing task queue dependencies
    ERROR: An uncaught exception occurred in runqueue###################################################                                                                                              | ETA:  0:00:00
    Traceback (most recent call last):
      File "/home/ubuntu/bitbake/lib/bb/runqueue.py", line 1508, in RunQueue.execute_runqueue():
                 try:
        >            return self._execute_runqueue()
                 except bb.runqueue.TaskFailure:
      File "/home/ubuntu/bitbake/lib/bb/runqueue.py", line 1428, in RunQueue._execute_runqueue():
                                                                     [43, 967, 4, 3, 1, 5, 3, 7, 13, 1, 2, 1, 1, 246, 35, 1, 38, 1, 35, 2, 338, 204, 142, 3, 3, 37, 244])
        >            if self.rqdata.prepare() == 0:
                         self.state = runQueueComplete
      File "/home/ubuntu/bitbake/lib/bb/runqueue.py", line 1164, in RunQueueData.prepare():
                             todeal.remove(tid)
        >                    self.prepare_task_hash(tid)

      File "/home/ubuntu/bitbake/lib/bb/runqueue.py", line 1177, in RunQueueData.prepare_task_hash(tid='/home/ubuntu/Poky/poky/meta-tutorial/recipes-tutorial/first/first_0.1.bb:do_build'):
                 self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(taskfn, taskname, procdep, self.dataCaches[mc])
        >        self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(taskfn + "." + taskname)

      File "/home/ubuntu/bitbake/lib/bb/siggen.py", line 45, in SignatureGenerator.get_unihash(task='/home/ubuntu/Poky/poky/meta-tutorial/recipes-tutorial/first/first_0.1.bb.do_build'):
             def get_unihash(self, task):
        >        return self.taskhash[task]

    KeyError: '/home/ubuntu/Poky/poky/meta-tutorial/recipes-tutorial/first/first_0.1.bb.do_build'


    Summary: There were 13 WARNING messages shown.
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

是的 - 我从 github 上提取了最新的 BitBake:

bitbake --version
BitBake Build Tool Core version 1.40.0

我的 python 代码有什么问题?

【问题讨论】:

    标签: bitbake


    【解决方案1】:

    https://www.yoctoproject.org/docs/2.1/bitbake-user-manual/bitbake-user-manual.html#var-BB_SIGNATURE_HANDLER

    似乎使用 BB_SIGNATURE_HANDLER noop(默认)

    我通过在 meta-tutorial/conf/bitbake.conf 中添加 BB_SIGNATURE_HANDLER 定义来修复此错误

    BB_SIGNATURE_HANDLER ?= "basichash"
    

    【讨论】:

    • 修复 BitBake 1.42 的问题
    • @ddidier 使用 BitBake 1.42(commit 34ed28a41),我仍然可以在没有定义 BB_SIGNATURE_HANDLER 的情况下重现此问题。
    • 真的很抱歉,我的意思是BB_SIGNATURE_HANDLER ?= "basichash" 确实解决了 1.42 的问题(没有它就无法工作)。
    【解决方案2】:

    我遇到了完全相同的问题,由于bitbake版本终于找到了。

    如果您从https://github.com/openembedded/bitbake git clone bitbake,您可以结帐到早期版本:

    git checkout tags/1.26.0 -b 1.26.0

    那么问题就解决了。

    【讨论】:

      【解决方案3】:

      教程代码已损坏。 bitbake.conf 存储在

      ch04/meta-tutorial/conf/bitbake.conf
      

      但它属于

      ch04/build/conf/bitbake.conf 
      

      把文件移到那里就可以了

      我打开了一个问题:https://bitbucket.org/a4z/bitbakeguide/issues/17/bitbakeconf-stored-in-the-wrong-place

      【讨论】:

      • 谢谢,我将文件从 'meta-tuturial/conf' 文件夹移动到 'build/conf' 文件夹,但我仍然得到相同的输出
      • 哦,现在我意识到我在测试它时遇到的异常是不同的:-)。你能发布你的 first_0.1.bb 的内容吗?
      • 它与示例中的完全相同 - a4z.bitbucket.io/docs/BitBake/…
      猜你喜欢
      • 2023-03-06
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      • 1970-01-01
      • 2018-06-23
      • 2014-10-05
      相关资源
      最近更新 更多