Embedded Linux Development with Yocto Project
上QQ阅读APP看书,第一时间看更新

Customizing an image with Hob

The following screenshot shows the list of included recipes in the Hob interface:

We can add or remove recipes (there is a search box in the upper-right hand corner) by selecting or deselecting them. If we click on the recipe name, we can see details such as its version and license.

From the tabs, we can see the number of selected packages, the list of available packages, and how the selected packages are grouped, as shown in the following screenshot:

After clicking on Build packages and waiting for them to be built, we have a second chance to see the list of selected packages, to know the value of the Estimated image size, and to decide to remove some application in order to generate a smaller image. By clicking on the package name, the included files from this package are listed. If a package is highlighted, its log can be displayed by clicking on Open log.

BitBake resolves all dependencies from the selected packages, including any needed additional package.

We can wrap the image by clicking on Build image and waiting until our image is ready, as shown in the following screenshot:

We can start over and change configurations, edit the selected packages, view logs, or list the files. Or, for images made for the QEMU-based machines, we can click on Run image and see our image being run inside the QEMU emulator, and the Yocto Project logo, as shown in the next screenshot:

Hob is a nice tool for image adjustments and addition of few packages on existing images. It is a great user-friendly interface for simple tasks and may be useful for teams to make temporary modifications in their images.

Tip

Hob is in the process of being replaced by a new tool called Toaster. At the time of writing this book, Toaster is under heavy development, and it is still feature incomplete. However, the next Yocto Project release will supersede Hob, according to the Toaster planned feature set. So, it is advised to research for Toaster in the Yocto Project documentation website for more updated information.