Fresh Yocto Code - the M2 Milestone release for embedded Linux goodness

Cross-posted from my blog on the Yocto Project site. Head over to for more information about the project, resources and all around good stuff

Today we dropped another development milestone build for the Yocto Project. Introducing the M2 build.

Our intent for these regular milestone drops is to synch up everything in the project and pause feature develoment, stabilize the software through some QA runs and bug fixing, and make it available to you, the community. This way you can evaluate the progress we have made, help identify and/or fix bugs and accelerate us to completion. It's also a way for us to be totally transparent in the project.

(And in the interest of complete transparency, I need to confess that I'm writing this in a little rental house on the Oregon coast, where at least part of my family is visiting with friends from college and their kids. For the Oregon beach, the weather is amazingly good - no wind, sun blazing away. But the sun, surf and sand does not excuse me from getting a blog post done).

Beth Flanagan gave a very good description of our M2 release on the Yocto Project mailing list. I thought I would highlight a couple of important features which are available now:

  • The Hob - As we have announced previously, we providing in the next release a user experience which provides access to the build system without editing a bunch of text files and running a command-line program. Now it's possible to do most system development tasks from within the UX. Our goal is for any regular system developer to develop their custom OS quicker than working without it. (More below on a couple of warnings for using this version). Joshua Lock has been the lead on this feature, though there are many others contributing as well. Check out this wiki page for some rough info about Hob and its various cohorts.

  • Layer Tools - This is a major extension of the Yocto Project to make it easy to develop independent layers. These can be maintained in separate repositories and combined together into a single distribution, you get enhanced warnings and notices when something seems messed up in yourlayer setup. And remote layers are supported now, thanks to an important contribution from Montavista. There are a number of features and improvements. Paul Eggleton has spearheaded this feature although there are many others who have contributed.

  • There are other important features and updates and performance improvements in this milestone, along with a number of bug fixes. Check Beth's release notes for details.

A word on this version of the Hob: There are a couple of issues which are present in this version, and which are being fixed. These are eay to work around, and we would appreciate it if you would try out this version with these caveats and give us your feedback.

First, before you try the Hob, we recommend that you do a bitbake build of an image from the command line. Then, Hob should work fine for generating images. So if the build directory is new, I recommend that you do:

$ bitbake core-image-minimal

before you try to use Hob.

Second, there is a problem if you disable packages in Hob. Some of the code paths work, but there are several which do not. Best bet for the M2 version of Hob is not to play with package disabling. This should be fixed in the M3 version, which should be coming out in a few weeks.

Launching the Hob in the M2 version is as simple as typing

$ bitbake -t xmlrpc -u hob

... once you have sun the usual environment setup script and done a minimal image build, as mentioned above.  This will be even simpler in a future milestone release, which will introduce a wrapper script.

Thanks again for checking out the M2 version of the Yocto Project. We really appreciate the contributions and support of the community, and we're interested in your feedback.

For more complete information about compiler optimizations, see our Optimization Notice.