Repo Manifest file for building Elk Audio OS Images for the Elk Pi Development Kit using the Yocto/Openembedded build system.
In order to use the manifest file, you need to install Google's repo
tool. Installation instructions can be found here.
You will also need a host Linux machine with a reasonably recent distribution and at least 50 GB of disk space available. Check the official Yocto requirements for more details. Docker can be used for building under Windows / macOS without installing a Linux Virtual Machine, although there will still be a non-negligible impact on build times compared to native Linux builds. Another popular option is to host the build environment on the cloud using Amazon's EC2 instances, Microsoft Azure or similar services.
You will also need to install gRPC 1.10.0 and protobuf 3.5.0 on your host environment.
Initialize the layers using repo init
. For example, this will use the manifest at the head of this repository:
repo init -u https://github.com/elk-audio/elkpi-yocto-layers.git
To check out a particular version tag:
repo init -u https://github.com/elk-audio/elkpi-yocto-layers.git -b regs/tag/<tag name>
After the initialization step, run the following command to fetch all the required layers:
repo sync
When a new version is released and the manifest file is updated, you can simply re-run repo init
and repo sync
as described in the previous steps. This will synchronize all the layers to the right commit without needing to refetch everything.
After the layers are initialized with repo
, you should see a new directory named layers
in your current path.
Run the following command from the same directory as you ran repo
:
TEMPLATECONF=./meta-elkpi/conf source layers/oe-init-build-env
This will set up the enviroment and you will end up in a directory called build
. Now you can build the image as described in meta-elkpi:
bitbake elkpi-audio-os-image
Be careful that the process to build an image from scratch can take up to several hours depending on your machine configuration. Following builds are usually much faster, since most of the heavy-weight components change rarely between updates of Elk Audio OS.
Copyright 2017-2019 Modern Ancient Instruments Networked AB, dba Elk, Stockholm, Sweden.