了解Yocto Project的状态缓存功能

问题描述 投票:1回答:1

我是Yocto Project的新手。我正在管理几个项目,每个项目都有一个版本:开发/调试和现场/工业化。在使用构建系统时,我注意到经常发生以下情况。

  1. 假设工作区是干净的,是全新的。
  2. 使用某些linux内核设备树和defconfig参数启动bitbake,最小化映像。 Bitbake需要一些时间,并且将创建输出文件。
  3. 现在,更改前面提到的设备树和defconfig中的参数(想象添加了新的外围设备)。重新启动bitbake,将为此新编译创建输出文件。
  4. 现在,诀窍到了。在步骤2中进行编译之前,将设备树和defconfig文件重置为该设置。重新启动bitbake,这几乎是即时的。输出文件将替换为在步骤2中创建的文件。

所以,我知道这可能是由于bitbake和sstate缓存的使用,或者这就是我想的。我已经搜索了一段时间,但信息不太清楚。这究竟如何工作?在编译时是否使用配置文件的输入创建了任何种类的签名,并且与签名相关联地存储了签名?我担心,因为我真的需要相信我要发送给现场的正是正确的编译而不是不安全的开发版本。

与此相关,启动bitbake -c cleanall或硬删除deploy和sstate-cache dirs有什么区别?

提前感谢。

linux embedded embedded-linux yocto bitbake
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.