Why Git?

Posted by Cliff Brake on 2016-08-18 | Comments are off for this article

Some time back, I gave a presentation that included an overview of the Git version control system.  I still occasionally get asked why Git should be used instead of Subversion, as it seems harder at first.  Most developers don’t really understand Git until they have used it for awhile, and then they will have an […]

Best practices for using CMake in OpenEmbedded/Yocto

Posted by Cliff Brake on 2015-03-10 | Comments are off for this article

I’ve already written about using autotools and qmake in OE.  With recent projects, we’re using CMake to build most C/C++ components.  Like any good tool, CMake has a learning curve, but it seems to do its job quite well.  Below are examples of a CMake build file, and corresponding OE recipe. ————————– CMakeLists.txt cmake_minimum_required(VERSION 2.8) […]

OpenEmbedded Build Template

Posted by Cliff Brake on 2013-06-28 | Comments are off for this article

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

Posted by Cliff Brake on 2013-05-08 | Comments are off for this article

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 […]

Git submodules can now track branches

Posted by Cliff Brake on 2013-04-22 | Comments are off for this article

As of version 1.8.2, Git submodules can now track branches instead of specific commits.  This is good news as in many cases, this is exactly the behavior we want.  However, Git submodules are still not as flexible as Google repo, but since submodules are built into Git, the submodule command is a good solution in […]

Git and Distributed Development

Posted by Cliff Brake on 2011-03-29 | Comments are off for this article

This is part of an ongoing series of articles on the Git version control system. The “many repository” paradigm has been partly driven by the distributed development paradigm.  Git solves the problem of multiple developers working in multiple repositories very well.  Because we want to use and customize projects like the Linux kernel, U-boot, and […]

Git and Why Multiple Repositories

Posted by Cliff Brake on 2011-03-17 | Read the First Comment

This is part of an ongoing series of articles on the Git version control system. This article discusses the trend in software configuration management toward multiple repositories, rather than one large repository.  In the past when many companies used Subversion or comparable systems, there was typically one huge company repository (I’ve seen them in the […]

Git Overview Screencast

Posted by Cliff Brake on | Read the First Comment

This screencast (use Firefox to view the screencast) provides an overview of the Git version control system.  There are 3 features of Git that are especially interesting: many repositories (vs. one large repository) distributed development cheap branches The fundamental driver for better tools is increasing system complexity.  More and more we are required to manage […]

OpenEmbedded srctree and gitver

Posted by Cliff Brake on 2010-10-11 | 5 Comments to Read

Recently an OpenEmbedded class name srctree became usable.  The srctree.bbclass enables operation inside of an existing source tree for a project, rather than using the fetch/unpack/patch idiom.  The srctree.bbclass in combination with the OpenEmbedded gitver.bbclass and git submodules provides a very interesting way to build custom software with OpenEmbedded. One of the classic problems with […]

Installing OMAP3 images on a SD card

Posted by Cliff Brake on 2010-06-14 | Comments are off for this article

This article and screen-cast is a continuation of that last couple posts describing the BEC OE build template.  The purpose again for a build system is to automate tedious manual tasks, and in doing so, we end up documenting how the build system works.  Having a good build system is important during product development so […]

OpenEmbedded Build Template

Posted by Cliff Brake on 2010-06-05 | 3 Comments to Read

Setting up an OpenEmbedded build is a fairly simple process if you carefully follow the instructions.  There are also a number of scripts available that automate the setup such as the OpenEmbedded Tools for Eclipse, the Angstrom setup scripts, the KaeilOS Openembedded Manager, and I’m sure there are many more (feel free to add in […]

Notification at the end of builds

Posted by Cliff Brake on 2009-11-05 | 2 Comments to Read

I do quite a few OpenEmbedded project builds during the course of a week.  This process usually takes 3-5 minutes.  That is just enough time to get distracted doing something else and forget about the build until an hour later when you realize — oops, I was supposed to send out a release email once […]

Best practices for building Gtk+ applications with OpenEmbedded

Posted by Cliff Brake on 2009-09-08 | 6 Comments to Read

I recently wrote an article about best practices building Qt applications with OpenEmbedded, and it occured to me that I should write an equivalent article for Gtk+ applications.  The same points apply — put your application source in a SCM system, and put the install logic in the application source (read the above article).  The […]

Best practices for building Qt applications with OpenEmbedded

Posted by Cliff Brake on 2009-08-06 | 16 Comments to Read

This article describes how to cross compile a Qt application (named qt_tutorial) with OpenEmbedded, and several best practices you should consider.  OpenEmbedded currently includes fairly good support for building Qt — both Qt Embedded and Qt X11.   OE also includes a number of qt classes that make building Qt applications easy.  One of the main […]

How to capture source changes to an OpenEmbedded package

Posted by Cliff Brake on 2009-07-14 | 4 Comments to Read

One task that is a often confusing to new OpenEmbedded users is how to capture changes to the source code for a package/recipe.  First, lets review the progression in tools use to capture source code changes. In days of yore, developers often used gnu diff to capture modifications to a source tree.  The typical practice […]