Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel76
outlinefalse
stylenone
typelist
printablefalse

This application note explains how to build the Linux BSP from the git repositories.

1. Linux Host Requirements

Linux host requirements are as follows: Ubuntu 20.04 with the recommended amount of free space of at least 250 GB.

2. Setting Up Linux Host

  1. Prepare the Linux host for the build:

    Code Block
    $ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
         build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
         xz-utils debianutils iputils-ping libbz2-dev libz-dev python2.7 dfu-util libusb-1.0.0-dev
    $ sudo dpkg-reconfigure dash # Say "No" to not use "dash" as the default system shell.
    $ wget https://storage.googleapis.com/git-repo-downloads/repo
    $ chmod 755 repo
    $ sudo cp repo /usr/local/bin/
  2. Clone the build script:

    Code Block
    $ git clone -b imx-56.1.1522-32-vb https://github.com/voxelbotics/meta-vb-imx8mp.git
  3. Checkout an appropriate release tag (e.g. 1.01.514-213446):

    Code Block
    $ cd meta-vb-imx8mp
    $ git checkout 1.01.514-213446
  4. Create directories for the Yocto cache and downloads:

    Code Block
    $ sudo mkdir -p /home/cache/CACHE/56.151.3222/sstate-cache
    $ sudo mkdir -p /home/cache/CACHE/56.151.3222/downloads
    $ sudo chmod 777 /home/cache/CACHE/56.151.3222/sstate-cache /home/cache/CACHE/56.151.3222/downloads

3. Building Images

Run the build script to build the release images:

Code Block
$ sh meta-vb-imx8mp/scripts/build5build6-151-3222.sh -t 1.01.514-213446
...

4. Building a Specific Release

In the above example, the script will build from the 1.01.514-213446 release tag in the source repositories https://github.com/voxelbotics/meta-vb-imx8mp , https://github.com/voxelbotics/linux-imx , https://github.com/voxelbotics/u-boot-imx.

If you would like to build from the top-of-the trunk of the imx-56.151.3222-vb development branches, run the script as below:

Code Block
$ cd meta-vb-imx-8mp
$ git checkout imx-56.151.3222-vb
$ cd ..
$ sh meta-vb-imx8mp/scripts/build5build6-151-3222.sh -b imx-56.151.3222-vb
...

5. Understanding Build

...

Artifacts

After the build, the resultant build artefacts artifacts will be located in the build-desktop/ directory:

Code Block
$ ls -l build-desktop/builddir/tmp/deploy/images/imx8mpnavq/
...
-rwxr-xr-x 1 build build   7054552 Sep 25 10:49 uuu
-rw-r--r-- 1 build build   1508656 Sep 25 10:49 imx-boot-imx8mpnavq-sd.bin-flash_evk
-rw-r--r--
1 build build      1605 Sep 25 10:54 navq-install-desktop.uuu
lrwxrwxrwx 1 build build        5862 Sep 25 1020:5911 imx-image-desktop-ros-imx8mpnavq.wic.bz2 -> imx-image-desktop-ros-imx8mpnavq-2022092508484920230109184422.rootfs.wic.bz2
lrwxrwxrwx 1 build build        52 Sep 25
10:54 navq-install-initrd.uImage -> navq-install-initrd-imx8mpnavq-20220925084849.uImage
-rw-r--r-- 1 build build       258 Sep 25 10:54 partitions.sfdisk
lrwxrwxrwx 2 build build        63 Sep 25 10:51 Image -> Image--5.15.32+git0+7035788108-r0-imx8mpnavq-20220925084849.bin
lrwxrwxrwx 2 build build        69 Sep 25 10:51 imx8mp-navq.dtb -> imx8mp-navq--5.15.32+git0+7035788108-r0-imx8mpnavq-20220925084849.dtb