Copyright 2016 RDK Management, LLC. All rights reserved. The contents of this document are RDK Management, LLC Proprietary and Confidential and may not be distributed or otherwise disclosed without prior written permission of RDK Management, LLC.

Host Setup

The OpenEmbedded build system should be able to run on any modern distribution with the following versions for Git, tar, and Python.

Below is the host environment details

Note: You should also have about 50 Gbytes of free disk space for building images.

Ubuntu and Debian

The essential packages you need for a supported Ubuntu or Debian distribution are shown in the following command

$ sudo apt-get install make gcc g++ diffstat texinfo chrpath gcc-multilib git gawk build-essential autoconf libtool libncurses-dev gettext gperf lib32z1 libc6-i386 g++-multilib python-git

Repo setup

In order to use Yocto build system, the repo tool must be properly installed on the machine.  Make sure you have a /bin directory in your home directory and that it is included in your path

$ mkdir ~/bin

$ PATH=~/bin:$PATH

Download the repo tool and ensure that it is executable

$ curl > ~/bin/repo

$ chmod a+x ~/bin/repo

Note: it is also recommended to put credentials in .netrc when interacting with repo.

A sample .netrc file is illustrated below




Build Setup

All RPi based RDK images with latest features are from rdk-next branch

Initializing the Build Environment

To build the image, follow the below instructions

$ mkdir <workspace dir>

$ cd <workspace dir>

$ repo init -u -b rdk-next -m rdkv-extsrc.xml

for ASP:

$ repo init -u -b rdk-next -m rdkv-asp-extsrc.xml

$ repo sync -j`nproc` --no-clone-bundle


Choose hybrid machine configuration to build the image with default compositor

$ MACHINE=raspberrypi-rdk-hybrid source meta-cmf-raspberrypi/setup-environment

$ bitbake rdk-generic-hybrid-wpe-image

for Mediaclient image with TDK

$ bitbake rdk-generic-hybrid-wpe-tdk-image

Choose the hybrid westeros machine configuration to build the image with westeros compositor

$ MACHINE=raspberrypi-rdk-hybrid-westeros source meta-cmf-raspberrypi/setup-environment

$ bitbake rdk-generic-hybrid-westeros-wpe-image

for Hybrid image with TDK

$ bitbake rdk-generic-hybrid-wpe-tdk-image

Link to check possible RDK images on RPi -

Development Branch

#To build the image from the development branch, the respective sprint month's development branch to be chosen and follow the below build procedure

$ mkdir <workspace dir>

$ cd <workspace dir>

For example to take development branch of September 2020, the rdk-dev-2009 branch to be used

for Non-ASP:
$ repo init -u -b rdk-dev-2009 -m rdkv-extsrc.xml

for ASP:

$ repo init -u -b rdk-dev-2009 -m rdkv-asp-extsrc.xml

$ repo sync -j `nproc` --no-clone-bundle

Note: The Kernel image and root filesystem will be created under ./ build-raspberrypi-rdkmc/tmp/deploy/images/raspberrypi-rdk-mc folder