News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

Tutorial explores buildroot development

May 18, 2009 — by Eric Brown — from the LinuxDevices Archive — 15 views

Part Five of Simtec's series on embedded Linux system development examines end-of-project strategies for the example ARM-based web kiosk system, and then walks users through buildroot development. The tutorial is written by Vincent Sanders and Daniel Silverstone (pictured), both from UK-based Simtec Electronics.

Part One of the series walked new Linux developers through the construction of a simple embedded Linux system, and Part Two explained how to construct a simple web server with a command shell on the console. Part Three extended the techniques learned about using a command shell on the serial console to the development of a web browser for a kiosk system. Part Four then covered the specifics of working with an ARM9 platform for the web kiosk, with a special focus on power management issues.

Part Five, entitled “Improving an embedded Linux system,” starts out with a discussion of a classic development dilemma: When do you know the project is complete, and when does optimization become feature creep? The answer, say the authors, is to complete the project when the requirements are met. However, if there's any chance that the project might form the basis for some future version or another project (and there usually is), one needs to plan ahead.

“It is almost always more cost effective to refine an existing product, perhaps updating it with new technologies as they become available, than to start afresh,” write the authors.

Because this is a beginning tutorial series, it has so far used the example of developing pre-compiled executables and libraries from a host system and constructing an appropriate file-system image. Among other problems with this approach, however, is there are always mismatches between the requirements of build and target systems, and the host-based approach tends to create overly large files. More importantly, it makes it difficult to go back and improve projects.

As a result, professional developers instead tend to cross-compile the entire system from source. To automate this tedious process, developers often use build environments such as a buildroot system or Openembedded's bitbake tool.

The tutorial walks users through building a simple busybox for the kiosk example project using buildroot. Specific steps include:

  • Configuring buildroot
  • Selecting target options
  • Tool chain configuration
  • Package selection for target configuration
  • Target file-system configuration

Part Five of the Simtec tutorial is available here:

Tutorial: Improving an embedded Linux system

This article was originally published on and has been donated to the open source community by QuinStreet Inc. Please visit for up-to-date news and articles about Linux and open source.

Comments are closed.