Accepting Constraints in Build Systems

As Embedded Systems become more complex, the complexity of the process to build the software for these systems also increases. As humans, our ability to deal with complexity is limited, so we develop tools and processes to manage the complexity. In the end, these tools and processes are about constraints and patterns. A well-designed tool […]

Git, Versioning, and Branching for Embedded Linux Development

When building a product using Linux, versioning and branching of your software is an important consideration. Everyone’s needs are different depending on the size of the team, culture, and testing requirements, so there is no one size that fits all. However, after working on a number of different projects for a dozen or so different […]

OpenEmbedded Build Template

How does one set an OpenEmbedded/Yocto/Poky/Angstrom build? There are many options. Some include: Angstrom setup scripts Poky Freescale Community BSP OpenEmbedded core standalone (I’m sure there are many others, feel free to add in comments …) Over the past years, we’ve supported a number of customers using OpenEmbedded to develop products using various SOC’s. We also […]

OS Containers for Build Systems

Since I’ve been running archlinux on some of my systems, one thing I’ve found useful is systemd-nspawn. systemd-nspawn containers (or chroots on non-systemd systems) give you a quick way to install a Linux distribution, that can run inside an existing Linux system. Some cases where systemd-nspawn containers (referred to as containers in this document) are […]

OpenEmbedded Source Mirrors

When using OpenEmbedded for product development, there are several reasons you may want to consider setting up a source mirror for your OpenEmbedded build: over time, sources disappear from download locations various servers for source packages may be off-line at the time a build is run some servers may be very slow, which slows down […]

OpenEmbedded: configuring openssh to allow a blank password

Noticed the following when browsing around in the OpenEmbedded sources the other day: ROOTFS_POSTPROCESS_COMMAND += “openssh_allow_empty_password ;” This allows a blank password for development, which is conveient for running ssh/scp commands to the device.  The above can be placed in an image recipe. The command modifies the PermitEmptyPasswords config option in /etc/ssh/sshd_config or /etc/default/dropbear.

Bitbake has a new way of displaying build status

Now instead of displaying a scrolling log, bitbake will display a simple output that lists which tasks it is working on at the moment: Currently 4 running tasks (185 of 3093): 0: gmp-native-5.0.5-r0 do_configure (pid 22919) 1: lzo-native-2.06-r1 do_configure (pid 27103) 2: expat-native-2.1.0-r0 do_compile (pid 7463) 3: ncurses-native-5.9-r10.1 do_compile (pid 9820) This really allows for […]