我有一个项目正在使用yocto构建包括gstreamer的库。我发现我需要修补一些gstreamer元素,从而用patch创建新的bitbake配方。
我通常必须使用图像名称作为参数运行bitbake,它将重新构建整个yocto(这很长):
MACHINE=some_machine nice bitbake yocto-etc-etc
Run Code Online (Sandbox Code Playgroud)
如何只重建我需要的部分而不是整个yocto?我听说过devtool,但不确定如何使用它。
小智 6
当然,这很容易做到。只需指定您要构建的配方而不是图像名称,例如,如果它是您更改的主要 gstreamer 配方(至少在当前版本中称为 gstreamer1.0):
MACHINE=some-machine bitbake gstreamer1.0
Run Code Online (Sandbox Code Playgroud)
请注意,命令行上预期的名称始终是配方名称或配方中 PROVIDES 中的内容,而不是运行时包名称。
关于 devtool,它当然可以让您进入一个环境,您可以更轻松地更改配方的源代码并从中生成补丁,但我们在这里讨论的实际构建部分并没有真正改变。您可以在Yocto 项目开发手册中找到有关如何使用 devtool 的更多信息
您可以根据需要将其他命令传递给bitbake。
删除温度:
bitbake -c clean gstreamer
Run Code Online (Sandbox Code Playgroud)
删除临时和状态缓存(我最常使用):
bitbake -c cleansstate gstreamer
Run Code Online (Sandbox Code Playgroud)
也要删除下载,并从do_fetch和所有内容开始构建
bitbake -c cleanall gstreamer
Run Code Online (Sandbox Code Playgroud)
一旦完成了其中一种适合您的清理工作,您就可以简单地为指定的命令提供build命令:
bitbake gstreamer
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5693 次 |
| 最近记录: |