Trucrux Inc

Building Yocto OS from Source Code

Host system required OS environment Ubuntu 18.04/20.04 64-bit

Host system required  Minimum storage : 150GB

Installing Dependencies #

Run the following command to install dependencies

$ sudo apt-get install gawk wget git diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping libsdl1.2-dev xterm
$ sudo apt-get install autoconf libtool libglib2.0-dev libarchive-dev python-git \
sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 \
help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev \
mercurial automake groff curl lzop asciidoc u-boot-tools dos2unix mtd-utils pv \
libncurses5 libncurses5-dev libncursesw5-dev libelf-dev zlib1g-dev bc rename

If the environment OS is Ubuntu 20.04 an warning message  Package python-git is not available, … is received. Run this command to install python package

$ sudo apt-get install python3-git

GIT configurations and Repo setup #

$ git config --global user.name <name>
$ git config --global user.email <email>
$ mkdir ~/bin (this step may not be needed if the bin folder already exists)
$ curl https://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=~/bin:$PATH

Replace <name> by git registered username and <email> by git registered email

Downloading codesetup #

Create a new directory “CodeSetup” (or any name preferred)for the setup.

$ mkdir ~/CodeSetup
$ cd ~/CodeSetup

Run below commands to sync the repos required for build in CodeSetup directory

  • To get latest update:
$ repo init -u https://github.com/Trucrux/trucrux-bsp-platform.git -b dunfell -m default.xml
$ repo sync -j$(nproc)

or

  • Download a realese tag
$ repo init -u https://github.com/Trucrux/trucrux-bsp-platform.git -b refs/tags/dunfell-imx8mq-v2.1.1_release -m default.xml
$ repo sync -j$(nproc)

Setup and OS build #

Trucrux provides below image:

  • fsl-image-gui – is a default trucrux image with GUI and without Qt5 support

Supported Distro

  • fslc-xwayland: Distro for Wayland with X11. This distro includes both wayland and X11 features.
  • fslc-wayland: Distro for Wayland without X11. This distro includes wayland feature but doesn’t have x11 support.

To build xwayland distro image follow below steps:

Use below command for setup the build enviroment for first time

$ cd ~/CodeSetup
$ MACHINE=imx8mq-trux-q01 DISTRO=fslc-xwayland . setup-environment build_xwayland

Once the machine is set, the build environment with following command

$ source setup-environment build_xwayland

Use bitbake command to build OS image

$ bitbake fsl-image-gui

For more bitbake options follow bitbake cheat sheet

https://elinux.org/Bitbake_Cheat_Sheet

The output image is located in

~/CodeSetup/build_xwayland/tmp/deploy/images/imx8mq-trux-q01/

NOTE: The resulting image is default image of Trucrux.