Requirements
-
A 64-bit Linux machine with Internet connection.
-
A Linux distribution supported by the Yocto Project.
Digi Embedded Yocto is developed using Ubuntu 20.04 LTS. For successful Digi Embedded Yocto projects, Digi recommends you use a Yocto Project-supported Ubuntu distribution. You can find Yocto Project-supported distributions in the Yocto Project system requirements at https://docs.yoctoproject.org/kirkstone/ref-manual/system-requirements.html#supported-linux-distributions. -
8 GB of RAM.
-
8 CPU cores.
-
250 GB of free disk space. SSDs are highly recommended for faster build times.
1. Install required packages
Install the following list of required packages for Ubuntu Linux distribution:
$ sudo apt-get install \
build-essential \
chrpath \
cpio \
debianutils \
dfu-util \
diffstat \
gawk \
gcc \
git \
iputils-ping \
libegl1-mesa \
liblz4-tool \
libsdl1.2-dev \
libyaml-dev \
lz4 \
mesa-common-dev \
pylint \
python3 \
python3-git \
python3-jinja2 \
python3-pexpect \
python3-pip \
python3-subunit \
socat \
texinfo \
unzip \
wget \
xterm \
xz-utils \
zstd
If you are using a different Linux distribution, find the list of packages at https://docs.yoctoproject.org/kirkstone/ref-manual/system-requirements.html#required-packages-for-the-build-host. |
2. Set up a TFTP server
You also need to set up a TFTP server on your host so you can program your built images.
-
Install a TFTP server. For Ubuntu, you can execute the following command to install a TFTP server:
$ sudo apt-get install tftpd-hpa
-
After completing installation, create a directory
/tftpboot
where exported files will be located (only root user can create this directory):$ sudo mkdir /tftpboot $ sudo chmod 1777 /tftpboot
-
To make sure the TFTP server is using the
/tftpboot
directory, edit the daemon’s configuration file/etc/default/tftpd-hpa
and change the constantTFTP_DIRECTORY
to point to your recently created/tftpboot
folder:/etc/default/tftpd-hpaTFTP_USERNAME="tftp" TFTP_DIRECTORY="/tftpboot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure"
-
Restart the daemon so that it uses the new TFTP folder:
$ sudo service tftpd-hpa restart tftpd-hpa start/running, process 3297
3. Set up an NFS server
Booting from NFS during system development can significantly reduce idle time compared to flashing an image directly in your device.
Follow these steps in your Linux machine to install and configure the NFS server:
-
Install the NFS server:
$ sudo apt-get install nfs-kernel-server
-
Create a directory to use as root of the NFS server, for example
/exports/nfsroot-ccmp13_dvk
.$ sudo mkdir -p /exports/nfsroot-ccmp13_dvk
-
Export the whole
/exports/nfsroot-ccmp13_dvk
directory. To do so, edit the/etc/exports
file of your development machine as root and add the following line:/etc/exports/exports/nfsroot-ccmp13_dvk *(rw,no_root_squash,async,no_subtree_check)
-
Restart the NFS server with the following command:
$ sudo service nfs-kernel-server restart