【问题标题】:Checking overall progress during an openembedded build在 openembedded 构建期间检查整体进度
【发布时间】:2013-07-21 11:54:43
【问题描述】:

当我通过 Openembedded(OE) 运行构建时,重新构建可能会非常快,或者在进行完整构建时可能需要很长时间。随着每一步的发生,命令行上的状态指示会不断“馈送”,例如:

NOTE: recipe xxxx: task do_fetch: Started
NOTE: recipe xxxx: task do_fetch: Succeeded

这很好,但很高兴知道整体进展。有没有办法知道需要构建的组件总数,或尚未运行的任务总数?理想情况下,我想将构建包装在一个脚本中以提供一种:

task 35 of 210...

键入消息以提供某种完成感。


更新:
显然,如果我进行试运行:

bitbake -n <command name> > ~/somefile.txt

我可以捕获输出并或多或少地查看正在运行的内容:

NOTE: Preparing runqueue 
NOTE: Executing SetScene Tasks 
NOTE: Executing RunQueue Tasks 
NOTE: Running task 217 of 314 (ID: 7, /home/mike/oe-head/.../foo.bb, do_compile) 
NOTE: Running task 309 of 314 (ID: 3, /home/mike/oe-head/.../foo.bb, do_install) 
...

所以这是朝着正确的方向发展,但它跳过了很多任务(0-216、218-308),那么我在哪里可以找到这些中间任务,它如何知道总共 314 个任务?

【问题讨论】:

    标签: linux build embedded openembedded bitbake


    【解决方案1】:

    我正在使用 Yocto 项目,这取决于您要在映像上安装什么。例如,如果将 'opencv' 'gstreamer' 'libeigen' 添加到图像文件中,则只会安装这些库和依赖项。 Yocto 中有近 8000 种食谱。每个配方和库都有一个任务编号(id)。当你只运行一些食谱时,它会安装那些然后跳过另一个。您可以添加所有配方,它会显示正在安装、配置或获取的内容的持续进度。

    在下图中,Yocto 正在安装“opencv”,因此它只显示那些相关的库并跳过其他的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-05
      • 2020-12-24
      • 2020-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多