Step-by-step Buildroot/Busybox Root File System
UNDER CONSTRUCTION -- ACTIVE EDITING, PLEASE DON'T MAKE CHANGES
This tutorial is for Developers. It is written to work with the odroidu2-ubuntu or odroidu2-debian SD-Card images [is this specific enough?]
It is not for Android developers.
Contents
Introduction
Did you know you can easily make a very small custom-built Linux system? The key is to use the famous "Buildroot" package. This tutorial presents an example to get you started.
You can add additional packages as you like. Many products have been built using this technique with busybox playing the central role.
Prerequisites
Overview
We are going to:
Download Example Files
You can use your browser, or use web get.
# Go to some convenient folder, home if you like cd ~ # Get the example files wget http://odroid.us/odroid/users/osterluk/buildroot-example/buildroot-example.tgz wget http://odroid.us/odroid/users/osterluk/buildroot-example/buildroot-example.tgz.md5sum md5sum -c buildroot-example.tgz.md5sum # Assuming the md5sum is correct, continue tar -xvf buildroot-example.tgz cd buildroot-example
Here are the files you now have:
Expand buildroot and Configure it
In the buildroot-example directory
# expand the tarball tar -xvjf buildroot-2012.11.tar.bz2 # Add our configuration cp odroidu2_just_busybox_defconfig buildroot-2012.11/configs/ # move to the buildroot top directory. This is where you drive buildroot from cd buildroot-2012.11 # and select our configuration make odroidu2_just_busybox_defconfig
Build the Root File System
I hope this amazes you! The buildroot guys have done a terrific service to the community. Visit them here: Buildroot
The make could take some time, depending on which packages you already have installed.
make
That's all there is to it.
ls output/build
These are the packages that were downloaded, configured and patched for cross-building: busybox-1.20.2 host-ccache-3.1.7 host-fakeroot-1.18.2 host-makedevs-undefined
Write the Root File System to SD-Card
See this tutorial Updating from Root File System Images if you don't know what to do with ./output/images/rootfs.tar.gz
Boot your odroid
Next Steps
You can add packages, like openssl, dropbear, or any of hundreds of others by doing 'make menuconfig' in the buildroot-2012.11 directory. It can be an iterative process since you generally need to make dependent libraries before the apps that need them.
You can add applets to busybox by running 'make menuconfig' in the output/build/busybox-1.20.2 directory