Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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.

Table of Contents

Host Setup

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

  • Git 1.7.8 or greater.

  • tar 1.24 or greater.

  • Python 2.7.3 or greater excluding Python 3.x, which is not supported.

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

Code Block
languagebash
themeDJango
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

Building

In order to use Yocto build system, the repo tool must be properly installed on the machine.

Repo setup

In order to install Repo make sure you have a /bin directory in your home directory and that it is included in your path

Code Block
languagebash
themeDJango
mkdir ~/bin
PATH=~/bin:$PATH

Download the repo tool and ensure that it is executable

Code Block
languagebash
themeDJango
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/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

machine code.rdkcentral.com

login YOUR_USERNAME

password YOUR_PASSWORD

Initilaizing the Build Environment

...

Yocto Build Steps

To build, follow below instructions

...

Build Steps


Code Block
languagebash
themeDJango
$ mkdir <workspace dir>
$ cd <workspace dir>

Follow below instructions to create build with external sources

Code Block
languagebash
themeDJango

$ repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkb-turris-pod-nosrcextsrc.xml -b rdk-next

$ repo sync -j4 --no-clone-bundle
MACHINE=turris-extender$ source meta-cmf-turrisraspberrypi/setup-environment build-turris-ext
 (Select option raspberrypi-rdk-broadband.conf)
$ bitbake rdk-generic-extenderbroadband-image

...


Note  :  On Successful build,
The kernel Image and root filesystem will be created under the below path,

             ~/tmp/deploy/images/raspberrypi-rdk-broadband folder


Flashing Procedure

Following command can be used to flash the RPI image to sd card using linux machine . dd tool should be available in linux

Code Block
languagebash
themeDJango
repo init -u https://code.rdkcentral.com/r/manifests -m rdkb-turris-pod-extsrc.xml -b rdk-next
repo sync -j4 --no-clone-bundle
MACHINE=turris-extender source meta-turris/setup-environment build-turris-ext
bitbake rdk-generic-extender-image

...

sudo dd if=<path to ImageName.rpi-sdimg> of=<path to SD card space> bs=4M
Example:
$ sudo dd if=rdk-generic-broadband-image-raspberrypi-rdk-broadband.rpi-sdimg of=/dev/sdb bs=4M

https://www.balena.io/etcher/ can be used to flash RPI image in sd card using windows