mad*_*dog 5 openembedded bitbake yocto
对驱动程序源代码进行一些修改后如何重建映像?
我已经尝试过 bitbake -f -c 编译和 bitbake 但我无法在驱动程序中找到修改的设置。有人可以告诉我如何使用修改后的代码重建图像。
我猜你想重新生成整个图像,不是吗?如果是这样,您可以尝试以下命令以确保 bitbake 不会使用 sstate 缓存:
bitbake image-name -c cleansstate && bitbake image-name
Run Code Online (Sandbox Code Playgroud)
如果您只想重建内核,请将image-name替换为virtual/kernel(或您想要重建的任何配方的名称)。
请注意,do_cleansstate 任务将删除配方 ${WORKDIR}!
欲了解更多信息:https://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html#ref-tasks-cleansstate
如果您直接在 ${WORKDIR} 中进行此类修改(除非您正在测试,否则不应这样做),执行以下命令就足够了:
bitbake virtual/kernel -f -c compile
Run Code Online (Sandbox Code Playgroud)
或者
bitbake virtual/kernel -C compile (to invalidate the stamps and force all tasks starting from do_compile)
Run Code Online (Sandbox Code Playgroud)
如果您没有直接在 ${WORKDIR} 中进行修改,则必须将 SRCREV 设置为新哈希并增加 PR。然后输入命令
bitbake <image-name>
Run Code Online (Sandbox Code Playgroud)
它会再次编译一个包并根据您的更改创建新映像。
如果您在 ${WORKDIR} 中进行了更改,请添加、提交并将其推送到您的存储库,然后按照我上面的步骤操作。这是最干净的解决方案。
其他解决方案建议的命令:
bitbake <image-name> -c cleansstate
Run Code Online (Sandbox Code Playgroud)
将导致所有包重建,如果您没有 sstate 镜像,这可能需要很长时间。
| 归档时间: |
|
| 查看次数: |
16770 次 |
| 最近记录: |