Getting Started - ArrowElectronics/arrow-soc-workshops GitHub Wiki

This section is derived from the Yocto Project Quick Build Manual

The Yocto Project combines, maintains, and validates three (3) key development elements.

  1. A set of integrated tools to make working with embedded Linux successful, including tools for automated building and testing, processes for board support and license compliance, and component information for custom Linux-based embedded operating systems.
  2. A reference embedded distribution (called Poky).
  3. The OpenEmbedded build system, co-maintained with the OpenEmbedded Project. There are many different open source components and tools within the Yocto Project umbrella.

Poky, the reference embedded OS is actually a working BUILD EXAMPLE which will build a small embedded OS with the included build system (BitBake, the build engine, and OpenEmbedded-Core, the core build system metadata).

The build system is downloaded with Poky build instruction "files" called recipes and layers (defined below). You can alter, copy, or use the Poky build specifics in any way you might need to in order to create your custom embedded Linux.

The instructions from here on after are for use on a Linux Virtual Machine, or a Linux Host.

Clone Poky

Navigate to the socfpga_yocto_workshop directory.

    $ cd ~/socfpga-workshop/socfpga_yocto_workshop

Clone the reference embedded distribution (called Poky). Checkout the warrior branch.

    $ git clone -b warrior git://git.yoctoproject.org/poky.git

Move the workshop custom layer to the poky directory.

    $ mv meta-my-custom-soc-board poky

Initialize the Build Environment

From within the poky directory, run the oe-init-build-env environment setup script to define Yocto Project's build environment on your build host.

    $ cd poky
    $ source oe-init-build-env

A notification will advise the user that the local.conf and bblayers.conf file have been automatically created with default settings since it was not defined by the user. There will be instructions showing how to customize this later in the workshop.

Build the Image

    $ bitbake core-image-minimal

The build will sometimes fail due to network stability or temporary unavailability of certain sites. If this occurs, repeat the build command and the build will continue.

This will take up to a few hours to build. Later additions to the build environment will be incremental and will not take as long.

Simulate Your Image Using QEMU

Once this particular image is built, you can start QEMU, which is a Quick EMUlator that ships with the Yocto Project.

    $ runqemu qemux86 

Use the password soceds1 for the sudo prompt. This will launch the emulated Linux operating system in a new shell. Use 'root' as the login.

Next- Customizing your Build for Specific Hardware

Return to - Building a Custom Linux BSP for SoC FPGA Systems Using the Yocto Project