This chapter describes how to build something with OE-lite, fx. how to build a specific OE-lite recipe, a Linux kernel image, a JFFS2 root filesystem image, an SDK toolchain image, and so on.
Building is done with the OE-lite Bakery sub-command called “bake”.
Before building you need to setup the build configuration in the file
A very minimal example configuration purely to test that building works:
DISTRO = "base" MACHINE_CPU = "arm-926ejs" PROVIDED = "all" SDK_CPU = "i686" SDK_OS = "linux-gnu" RMWORK = "0"
DISTRO variable selects the OE-lite distribution. Here
we choose a simple distribution called base to be able to build
something. Next we set the cpu we want to cross compile for using
MACHINE_CPU. It is also possible to set
MACHINE to target a
specific board e.g. pandaboard or rpi (raspberry-pi).
MACHINE="rpi"you will need the raspberry-pi manifest from git.oe-lite.org.
PROVIDED variable is used to inform the bake command what
dependencies can be assumed to be provided on the host system. See
conf/provided/all.conf in the core metadata layer. The
variables are used to specify what architecture the OE-lite
SDK should be build for.
RMWORK currently need to be set to 0
since automatic removal of temporary build files is not
implemented. Optionally you may want to set
PARALLEL_MAKE = "-j X"
where X is the number of CPUs available on your host system + 1, to
speed up the build.
Now it is possible to choose something to build with the bake command.
In OE-lite all recipes can be build. A recipe
is a file with the
.oe file extension, take a look at what recipes
you have in your current manifest using:
find . -name '*.oe'
The primary goal of the building process in OE-lite is to produce
deployable images, so for this example we will build an image. In the
base metadata layer a rootfs image recipe is located in:
recipes/images which we can try building:
oe bake base-rootfs
oe will resolve the list of dependencies, present you with a list of
what needs to be built and ask for confirmation before continuing. The
build process takes a while, but in the end you should see that
base-rootfs was build and the elapsed build time. The deployable images
are now located in