首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在yocto任务列表的末尾添加自定义bitbake任务?我希望自定义任务在构建映像时作为最后一个任务运行。

如何在yocto任务列表的末尾添加自定义bitbake任务?我希望自定义任务在构建映像时作为最后一个任务运行。
EN

Stack Overflow用户
提问于 2021-05-23 15:29:31
回答 1查看 981关注 0票数 2

我想在bitbake中添加一个任务,它应该在任务之后运行,而不是在任何任务之前运行。换句话说,我希望在构建映像时将自定义任务作为最后一个任务运行。

示例:

我有两个任务,名为do_task_A()和do_task_B()。现在,我希望do_task_B()在do_task_A()之后执行。

代码语言:javascript
复制
    do_task_A() {
        ..........
        ..........
        ..........
    }
    addtask task_A
    
    do_task_B() {
        ..........
        ..........
        ..........
    }
    addtask task_B after do_task_A

上面的代码段确保task_B如果被执行,则在task_A之后被执行,但是它不能保证task_B的执行。

这个要求是,在构建映像时,do_task_B()必须作为最后一个任务运行。

我已经尝试过的事物:

do_build

  • addtask前do_task_A后
  1. 加任务task_B do_image_complete

前task_B do_task_A前task_B task_B do_task_A后task_B

由于循环依赖,上述方法(1-3)失败。

satisfied)

  • Added

  • 将task_B添加为现有任务的后置函数(确保所有依赖项都是正在成功执行的任务/函数中的另一个function

  • Used bb.build.exec_func(' task_B ',d)中的函数task_B task_B。

上述方法(4-6)除例外情况外失败: IndexError:列表索引超出范围

有什么方法可以在构建映像时强制运行task_B吗?我希望默认情况下执行do_task_B(),而不是使用bitbake -c

EN

回答 1

Stack Overflow用户

发布于 2021-09-30 11:51:40

构建是最后的任务,因此您必须设置:

代码语言:javascript
复制
addtask do_task_A after do_deploy before do_build
addtask do_task_B after do_task_A before do_build

也许你可以在这里看看:How can I add a task after do_deploy()?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67661451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档