GUF-Yocto-34.0-r5756-0
VINCELL
User Manual
To distinguish between the native GNU toolchain and the GNU cross toolchain, the GNU cross tools are prefixed
with a triplet. E.g. if the toolchain produces opcode for an
ARMv5TE
core having library routines that can
deal with Linux system calls satisfying the
GNU EABI
, the compiler is named
arm-v5te-linux-gnueabi-gcc
, the
assembler is named
arm-v5te-linux-gnueabi-as
, and so on. Sometimes a toolchain prefix is only named
arm-
linux-
or something else. This depends on the toolchain vendor. Garz & Fricke uses the naming convention
stated before.
The build of the embedded Linux system is divided into two steps, covered in the following chapters:
Downloading and Installing a Yocto BSP
[
I
8.2 Download and install the Garz & Fricke Yocto BSP]
Building the BSP for the target platform
[
I
8.3 Building the BSP for the target platform with Yocto]
8.2
Download and install the Garz & Fricke Yocto BSP
Yocto supports Linux as a host system only. To install a Garz & Fricke Yocto BSP the following files from the CD
/ USB stick shipped with the starter kit for VINCELL have to be extracted:
GUF-Yocto-34.0-r5756-0.tar.bz2
This archive can also be found on the Garz & Fricke support website:
http://support.garz-fricke.com/projects/Vincell/Linux-Yocto/Releases/
This archive contains the necessary files to build a cross toolchain and a Yocto based target image. To install the
Garz & Fricke BSP, simply extract the file.
For example:
$ cd ~
$ mkdir yocto
$ cd yocto
$ cp /media/sda1/Tools/GUF-Yocto-34.0-r5756-0.tar.bz2 .
$ tar -xvf GUF-Yocto-34.0-r5756-0.tar.bz2
If everything went right, we have a
GUF-Yocto-34.0-r5756-0
directory now, so we can change into it:
$ cd GUF-Yocto-34.0-r5756-0
8.3
Building the BSP for the target platform with Yocto
In the Yocto directory, the following command selects the platform to be built:
$ MACHINE=vincell source setup-environment build-vincell
After that the shell should have changed the current working directory to the platform specific build directory
build-vincell
. To build packages and complete images, the Yocto build tool
bitbake
is used. It is documented in
the official Yocto documentation and online in the
OpenEmbedded Bitbake Manual
:
http://www.yoctoproject.org/docs/1.6.1/bitbake-user-manual/bitbake-user-manual.html
Yocto builds the images from build descriptions called
recipes
. The recipe to build the Garz & Fricke Linux image
is called
guf-image
. To build this image, call:
$ bitbake guf-image
This step automatically downloads all necessary parts from the web, builds the native toolchains as well as the
target binaries. As this step is fairly complex, and many packages will be created and compiled, it takes quite
some time. On our development machines, a complete build takes approximately 60 minutes.
After the build has finished, the images will be located in your build directory under
tmp/deploy/images/vincell
.
In this directory, several files should be located. The most important ones are the last kernel build (
zImage-
vincell.bin
) and the last target root file system (
guf-image-vincell.ubi
). The latter is also often called
rootfs
.
Rather than files itself, these are symbolic links to the former build artifacts in the same directory. Every succes-
sive build of the image creates new artifacts with a recent timestamp in its name.
46