Build Instructions
To set up RDK-B on a Raspberry Pi, ensure you have a Raspberry Pi 4 Model B and are using Kirkstone builds. Follow the steps below for the build process:
Build Requirements: Setting up the Host Environment
- Linux PC: 64-bit Ubuntu 18.04 LTS (Precise supported distributions and versions are here) Note: Ubuntu 20.04 LTS is also supported.
- Free HDD Space: Minimum 100GB free memory space
- Raspberry Pi development kit: Raspberry Pi 4B
Code Block |
---|
language | bash |
---|
theme | RDark |
---|
title | Host Tool Versions |
---|
|
Git- 1.8.3.1 or greater
Python- 3.8.10
tar- 1.24 or greater |
Install the following packages for setting up your host VM:
The instructions provided below are meant to be executed via the command line on an Ubuntu machine.
Code Block |
---|
language | bash |
---|
theme | RDark |
---|
title | Package Installation |
---|
|
# essential packages installation
# super user mode is required
# major essential packages
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib g++-multilib build-essential chrpath socat bison curl cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm
Installation steps for Ubuntu 20.04
# Update and upgrade the system
sudo apt-get -y update
sudo apt-get -y upgrade
# Install essential packages
sudo apt install -y gawk wget python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-tool git diffstat unzip texinfo gcc build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping make xsltproc docbook-utils fop dblatex xmlto lib32z1 libc6-i386 g++-multilib curl locales vim git-extras tree valgrind exuberant-ctags cscope dos2unix lcov libcunit1-dev libjson-perl members screen silversearcher-ag git-review nano |
Code Block |
---|
|
sudo dpkg-reconfigure dash |
Select “No”
To choose bash, when the prompt asks if you want to use dash as the default system shell- select “No”
Upgrade your Git version to 1.8.x or higher.
Code Block |
---|
|
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git |
Once git is installed, configure your name and email using the below commands.
Code Block |
---|
|
# review your existing configuration
git config --list --show-origin
# configure user name and email address
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com
# configure git cookies. Needed for Gerrit to only contact the LDAP backend once.
git config --global http.cookieFile /tmp/gitcookie.txt
git config --global http.saveCookies true |
In order to use Yocto build system, first you need to make sure that repo is properly installed on the machine.
Code Block |
---|
|
# create a bin directory
mkdir ~/bin
export PATH=~/bin:$PATH
# Download the repo tool and ensure that it is executable
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 the repo. For more details on how to setup .netrc credentials, please refer this page .
A sample .netrc file is illustrated below.