Building your own custom Linux image for a development board


Details
So you've got an ARM Linux development board, and maybe you've got an idea for a cool device that you'd like to build with it. But you're stuck using someone else's kernel or someone else's root filesystem, and you'd like to build your own that's customized to your needs. Or maybe you're happy with your current dev board environment, and you're just curious about how the "sausage is made."
Does that sound like you? If so, then you should definitely come to this workshop.
We'll cover:
- How to install a pre-compiled cross-toolchain, so you can compile on your existing x86 Linux box and target an ARM device
- How to set up an SD card with your kernel, U-boot bootloader, and rootfs
- How to configure, build and install a mainline kernel that can boot on your device
- How to build and install a Debian-based minimal root filesystem using debootstrap
We'll use a Beaglebone Black or a Beaglebone Green as our development platform. But many of the techniques that we'll demonstrate will work on other popular development boards out there.
We encourage you to bring a Beaglebone, a laptop running Linux, and a 4GB or larger microSD card so you can join in the fun.
Prerequisites:
-
You should have Linux installed on your development machine
-
You should have installed the basic kernel development tools. On Debian/Ubuntu-based systems, you'd do this with "sudo apt-get install build-essential"
-
You should have downloaded a copy of the mainline Linux kernel, with "git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git"
-
Since our Hackerspace network connection is not very fast, we recommend that you download a copy of the Linaro gcc toolchain from "https://releases.linaro.org/components/toolchain/binaries/latest-5.1/arm-linux-gnueabihf/gcc-linaro-5.1-2015.08-x86_64_arm-linux-gnueabihf.tar.xz"
Workshop cost: FREE for Solid State Depot Members, or $10-$25 (sliding scale) for non-members. All workshop proceeds go to support Solid State Depot.
Instructor: Paul Walmsley

Building your own custom Linux image for a development board