FAQ's (Kirkstone)
Frequently Asked Question's (FAQ)
What is Yocto and what is it used for?
Yocto is an open-source project that provides a set of tools and meta-data to build custom Linux distributions for embedded systems. Yocto can be used to build a customized Linux distribution for a specific target hardware platform, with specific packages and configurations.
2. What is the difference between Yocto and traditional Linux distributions?
Yocto provides a set of tools and meta-data to build custom Linux distributions, whereas traditional Linux distributions are pre-packaged and ready-to-use operating systems. Yocto allows you to create a custom distribution tailored to your specific needs, while traditional Linux distributions may not include all the packages and configurations you require.
3. How long does it take to build a Yocto image?
The time it takes to build a Yocto image can vary greatly depending on several factors, such as the size of the image, the hardware specifications of the build machine, and the network connectivity. A typical Yocto build on a fast machine with a good internet connection and adequate disk space can take anywhere from 30 minutes to several hours, depending on the size and complexity of the image being built.
4. Can I customize the packages included in a Yocto image?
Yes, you can customize the packages included in a Yocto image by modifying the meta-data used by the Yocto build system. You can add or remove packages, modify configuration files, and make other changes to the image as needed.
5. Can I use Yocto to build an image for a specific hardware platform?
Yes, Yocto can be used to build an image for a specific hardware platform. You need to specify the target hardware in the Yocto build configuration and provide any necessary device-specific meta-data.
6. What are the prerequisites for building a Yocto image?
Please view the prerequisites in the following link at the top of the page.
7. How to find whether the build is failing because of Internet issues?
Yocto builds consist of more than 1,500 components spread around the internet. Invasive man-in-the-middle proxies can prevent the builds from working by interfering with the end-to-end security built into some of the tooling (such as curl
or git
). If you have such an enviroment, please work with your local IT support staff for solutions because these will be specific to the network infrastructure your IT has chosen. We also recommend you read Yocto documentation on working with proxies.
Errors that indicate issues caused by proxies include:
fatal: unable to connect to github.com: github.com[0: 140.82.121.3]: errno=Connection timed out
.do_fetch. Failed to fetch URL.
fatal: unable to connect to git.yoctoproject.org:git.yoctoproject.org[0: 44.225.90.102]: errno=Connection timed out
.
You can also test for this:
curl -L https://dl.google.com/go/go1.14.4.linux-amd64.tar.gz >go1.14.4.tar.gz
If that fails with curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt
, a proxy is being used.
8. How to clean the Yocto build?
We can use the following command to clean up the build in case of oe_runmake failures.
bitbake -c cleanall seconorth-image
9. What are the common build errors which could occur in the yocto build?
Hardware resources
Fetching problems
Kernel compile errors
UBI size is too small error
10. How to easily update and upgrade to the latest version of the downloaded packages?
We have two commands by which we can update and upgrade to the latest version of the packages.
sudo apt update
sudo apt upgrade