mas*_*ier 13 openembedded bitbake yocto
任何人都可以更全面地向我解释sstate缓存如何在yocto中工作?
这种解释还不清楚.
我不明白何时出现这种情况:
NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Running setscene task 118 of 155 (virtual:native:/home/lulianhao/poky-build/edwin/poky/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot_setscene)
NOTE: Running setscene task 119 of 155 (/home/lulianhao/poky-build/edwin/poky/meta/recipes-devtools/quilt/quilt-native_0.48.bb:do_populate_sysroot_setscene)
Run Code Online (Sandbox Code Playgroud)
当它找到工件或得到候选人,然后检查签名.我想知道什么时候setcene任务实际运行.
附加问题:当它在本地sstate_cache文件夹中查找并进入镜像时?
Ste*_*ano 15
Yocto项目手册有一节专门讨论共享状态缓存.
要回答您的问题,首先检查sstate-cache文件夹,然后检查镜像是否在本地找不到任何内容.
此缓存是基于一组输入构建的,这些输入被散列为可以在其中找到的"签名" $BUILD_DIR/tmp/stamps,但请记住,您需要bitbake-dumpsigs来查看该文件.查看bitbake-dumpsigs并bitbake-diffsigs可以帮助您了解缓存的工作原理.此外,还有一篇很棒的"提示和技巧"文章,介绍了解构建环境中的变更内容.
虽然可能需要一些时间才能理解,但共享状态缓存非常有价值且经过严格测试.
在跟踪依赖性方面,例如为什么您的图像可能包含passwd,bitbake -g将为您提供依赖关系树,并且oe-pkgdata-util find-path可以帮助您了解在生成的图像上哪个配方导致给定的二进制文件.
有用的提示:"当我们需要从头开始重建时,我们要么删除build/tmp,以便我们可以使用sstate-cache来加速构建,或者我们删除build/tmp和sstate-cache,这样就不会重用缓存.建筑." 1
1萨尔瓦多,奥塔维奥和Daiane Angolini."6.2了解共享状态缓存." 使用Yocto项目进行嵌入式Linux开发