The Yocto Project is a set of tools that helps to create customized Linux systems. This is a short description of how to prepare the host computer and how to create a project with yocto.
Scroll Ignore | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
Yocto Project is supported in many Linux Distributions, this descriptions refers to Ubuntu 20.04 LTS. For other Distributions you need to refer to the Yocto Project Reference Manual.
This requirements are generally needed for Yocto Project in Ubuntu 20.04:
required packages:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
sudo apt install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio \
python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 \
libegl1-mesa libsdl1.2-dev pylint3 xterm |
If you do not have installled Linux OS on your host computer, you can optionally run VM with a supported Linux OS:
e.g. with OracleVM:
VM Setup:
RAM: >= 8 GB
CPU: >= 4
HDD: 150 GB dynamically
ubuntu-20.04-desktop-amd64.iso
install vm guest additions
Network: network bridge
optional: add shared folder, enable drag and drop
Scroll Ignore | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
Create and navigate to yocto directory:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
mkdir yocto && cd yocto |
Clone the Yocto Project sources (selected branch is 'Hardknott'. For other branches see: https://wiki.yoctoproject.org/wiki/Releases) :
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
git clone -b hardknott https://git.yoctoproject.org/poky.git |
Scroll Ignore | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
The following steps are required to create an image for the Intel FPGA devices:
For Intel FPGA devices you need the meta-layer 'meta-altera'. Run following command to clone this meta-layer from github into the 'poky' folder:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
cd poky
git clone -b master https://github.com/kraj/meta-altera.git |
Run the oe-init-build-env script to initialize the environment:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
source oe-init-build-env |
Add meta-altera layer to /yocto/poky/build/conf/bblayers.conf:
Code Block | ||||
---|---|---|---|---|
| ||||
echo 'BBLAYERS += " ${TOPDIR}/../meta-altera "' >> conf/bblayers.conf |
Remove default configuration of the MACHINE variable and set it to a supported machine (see meta-altera for more information) of meta-altera layer e.g 'cyclone5':
Code Block | ||||
---|---|---|---|---|
| ||||
sed -i /MACHINE\ \?\?=\ \"qemux86-64\"/d conf/local.conf
echo "MACHINE = \"cyclone5\"" >> conf/local.conf |
Set kernel version for meta-altera:
Code Block | ||||
---|---|---|---|---|
| ||||
echo 'PREFERRED_PROVIDER_virtual/kernel = "linux-altera-lts"' >> conf/local.conf
echo 'PREFERRED_VERSION_linux-altera = "5.4%"' >> conf/local.conf |
Build the image:
Code Block | ||||
---|---|---|---|---|
| ||||
bitbake core-image-minimal |
This command can take several hours to run the first time.
Scroll Ignore | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
Scroll Only | ||
---|---|---|
|
Scroll pdf ignore | ||||||
---|---|---|---|---|---|---|
|