Reader small image

You're reading from  Learning Embedded Linux Using the Yocto Project

Product typeBook
Published inJun 2015
Reading LevelIntermediate
Publisher
ISBN-139781784397395
Edition1st Edition
Languages
Right arrow
Authors (2):
Alexandru Vaduva
Alexandru Vaduva
author image
Alexandru Vaduva

Alexandru Vaduva is an embedded Linux software engineer whose main focus lies in the field of open source software. He has an inquiring mind and also believes that actions speak louder than words. He is a strong supporter of the idea that there is no need to reinvent the wheel, but there is always room for improvement. He has knowledge of C, Yocto, Linux, Bash, and Python, but he is also open to trying new things and testing new technologies. Alexandru Vaduva has been a reviewer of the book Embedded Linux Development with Yocto Project, Packt Publishing, which is a great asset to the Yocto Project community.
Read more about Alexandru Vaduva

View More author details
Right arrow

Chapter 8. Hob, Toaster, and Autobuilder

In this chapter, you will be introduced to new tools and components used in the Yocto community. As the title suggests, this chapter is dedicated to another category of tools. I will start with Hob as a graphical interface, which is slowly dying, and in time, will be replaced by a new web interface called Toaster. A new point of discussion will also be introduced in this chapter. Here, I am referring to the QA and testing component that is, in most cases, absent or lacking from most of the projects. Yocto takes this problem very seriously and offers a solution for it. This solution will be presented in the last section of the chapter.

You will also be offered a more detailed presentation to components, such as Hob, Toaster, and Autobuilder. Each of these components will be assessed separately and their benefits and use cases are looked at in detail. For the first two components, (that is, Hob and Toaster) information regarding the build process is...

Hob


The Hob project represents a GUI alternative to the BitBake build system. Its purpose is to execute the most common tasks in an easier and faster manner, but it does not make command-line interactions go away. This is because most parts of recipes and configurations still need to be done manually. In the previous chapter, the BitBake Commander extension was introduced as an alternative solution for the editing of recipes, but in this project, it has its limitations.

Hob's primary purpose is to allow interaction with the build system made easier for users. Of course, there are users who do not prefer the graphical user interface alternatives to command-line options, and I kind of agree with them, but this is another discussion altogether. Hob can be an option for them also; it is an alternative not only for people who prefer having an interface in front of them, but also for those who are attached to their command-line interaction.

Hob may not be able to a lot of tasks apart from most common...

Toaster


Toaster represents an alternative to Hob, which at a given point in time, will replace it completely. It is also a web-based interface for the BitBake command line. This tool is much more effective than Hob; it is not only able to do the most common tasks in a similar manner as Hob, but it also incorporates a build analysis component that collects data regarding the build process and the resultant outcome. These results are presented in a very easy-to-grasp manner, offering the chance to search, browse, and query the information.

From the collected information, we can mention the following:

  • Structure of the image directory

  • The available build configurations

  • The outcome of a build along with the errors and registered warnings

  • The packages present in an image recipe

  • Recipes and packages that are built

  • Tasks that are executed

  • Performance data regarding executed tasks, such as CPU usage, time, and disk I/O usage

  • Dependency and reverse dependencies for recipes

There are also some drawbacks to the...

Autobuilder


Autobuilder is the project responsible for QA, and a testing build is available inside the Yocto Project. It is based on the BuildBot project. Although this topic isn't dealt with in this book, for those of you interested in the BuildBot project, you can find more information about it in the following information box.

Note

The starting page of Buildbot can be accssed at http://trac.buildbot.net/. You can find a guide on quick starting BuildBot at http://docs.buildbot.net/0.8.5/tutorial/tour.html, and its concepts can be found at http://docs.buildbot.net/latest/manual/concepts.html.

We are now going to address a software area that is very poorly treated by developers in general. Here, I am referring to the testing and quality assurance of a development process. This is, in fact, an area that requires more attention from us, including me as well. The Yocto Project through the AutoBuilder initiative tries to bring more attention to this area. Also, in the past few years, there has...

Summary


In this chapter, you were presented with a new set of components that are available in the Yocto Project. Here, I am referring to the Hob, Toaster, and AutoBuilder projects. The chapter first introduced Hob as a BitBake alternative. It was followed by the Toaster alternative to Hob, which also comes with a lot of interesting features, and although it is not at its best now, over time, it will become a real solution for developers who are not interested in learning a new technology. Instead, they only interact with a tool to get what they want in a quick and easy manner. This chapter finished with the AutoBuilder project that offers a QA and testing platform for the Yocto Project community and can be transformed in a continuous integration tool.

In the next chapter, some of the other tools will be presented, but this time, the focus will move a little towards the exterior of the community and also its small tools. We will also cover projects and tools, such as Swabber, a project that...

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Learning Embedded Linux Using the Yocto Project
Published in: Jun 2015Publisher: ISBN-13: 9781784397395
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Authors (2)

author image
Alexandru Vaduva

Alexandru Vaduva is an embedded Linux software engineer whose main focus lies in the field of open source software. He has an inquiring mind and also believes that actions speak louder than words. He is a strong supporter of the idea that there is no need to reinvent the wheel, but there is always room for improvement. He has knowledge of C, Yocto, Linux, Bash, and Python, but he is also open to trying new things and testing new technologies. Alexandru Vaduva has been a reviewer of the book Embedded Linux Development with Yocto Project, Packt Publishing, which is a great asset to the Yocto Project community.
Read more about Alexandru Vaduva