Setup Environment

From RidgeRun Developer Wiki





Follow Us On Twitter LinkedIn Email Share this page







Using this URL

Host computer Requirements

The host computer need to follow some system requirements.

Hardware Configuration

  • x86 machine
  • Quad-core CPU (e.g., Intel i7-2600 @ 3.4 GHz or equivalent/better)
  • 300 GB free disk space (swap partition > 32 GB)
  • 16 GB RAM

Operating System

  • Ubuntu 22.04

Required Tools

  • Git 1.8.3.1 or later
  • Tar 1.28 or later
  • Python 3.10.2 or later
  • GCC 10.1 or later
  • GNU Make 4.0 or later
  • Kas 4.8 or later

Permissions

  • Sudo privileges are required to run certain commands

Setup Host computer

Install the following packages to prepare your host environment for the Yocto build. Uptade first:

sudo apt update

Install dependencies:

sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint xterm python3-subunit mesa-common-dev zstd liblz4-tool locales tar python-is-python3 file libxml-opml-simplegen-perl vim whiptail libacl1

Install pipx:

sudo apt install pipx

Add kas to PATH (restart shell after):

# This command should add the kas binary location to your PATH.
# Restart your shell session after running this command for the changes to take effect.
pipx ensurepath

Install kas:

# The kas version is expected to be 4.8 or higher
pipx install kas

Set up locales if you haven't setup already, by using the following commands:

sudo locale-gen en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8

Sync

Qualcomm Linux uses the kas tool to sync the meta layers, configure the environment, and execute the BitBake commands. QLI also uses the kas tool to sync and build the Yocto meta layers. For every critical release, Kas lock files record the meta-layer repository information in meta-qcom-releases.

You can checkout the lock files for each release using the meta-qcom-release-tag. The meta-qcom release tag follows the syntax qli-<version>. For example, the meta-qcom release tag can be qli-2.0-rc2, where 2.0-rc2 is the release version.