This shows you the differences between two versions of the page.
iot:labs:09 [2017/10/03 00:51] jan.vaduva |
iot:labs:09 [2020/01/07 12:03] (current) jan.vaduva [Implement a project from scratch] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ======Lab 9: Yocto Project`s first steps====== | + | ======Lab 9: Yocto Project first steps====== |
=====Implement a project from scratch===== | =====Implement a project from scratch===== | ||
Line 6: | Line 6: | ||
Set up your Linux system with the right packages (instruction are provided for Ubuntu, Fedora, CentOS and openSUSE) | Set up your Linux system with the right packages (instruction are provided for Ubuntu, Fedora, CentOS and openSUSE) | ||
- | - Download the latest stable release: <code>$ git clone -b pyro git://git.yoctoproject.org/poky.git</code> //or// <code>$ wget downloads.yoctoproject.org/releases/yocto/yocto-2.3.2/poky-pyro-17.0.2.tar.bz2</code> | + | - Install prerequisites: <code>sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ |
+ | build-essential chrpath socat libsdl1.2-dev xterm</code> | ||
+ | - Download the latest stable release: <code>$ git clone -b zeus git://git.yoctoproject.org/poky.git</code> //or// <code>$ wget downloads.yoctoproject.org/releases/yocto/yocto-3.0/poky-zeus-22.0.0.tar.bz2</code> | ||
- Source //oe-init-build-env// script, to create the build directory: <code>$ source poky/oe-init-build-env my_dir</code> | - Source //oe-init-build-env// script, to create the build directory: <code>$ source poky/oe-init-build-env my_dir</code> | ||
- | - Edit //conf/local.conf// and set //MACHINE// and any extra required variables | + | - Edit //conf/local.conf// and set //MACHINE// as //qemux86// and any extra required variables. |
- Build the OS image: <code>$ bitbake core-image-minimal</code> | - Build the OS image: <code>$ bitbake core-image-minimal</code> | ||
- Boot the OS image of your choice: <code>$ runqemu qemux86</code> Where: <code>MACHINE=qemux86</code> | - Boot the OS image of your choice: <code>$ runqemu qemux86</code> Where: <code>MACHINE=qemux86</code> | ||
Line 15: | Line 17: | ||
===== Exercises===== | ===== Exercises===== | ||
- Finish a successful Yocto Project build. | - Finish a successful Yocto Project build. | ||
- | - Find a poky version that contains Hob and configure a Hob image | + | - Find a poky version that contains Hob and configure a Hob image. |
- Setup and start Toaster on port //8399//. | - Setup and start Toaster on port //8399//. | ||
- Get the standards SDK installer and build **htop** package for your OS. | - Get the standards SDK installer and build **htop** package for your OS. | ||
- | - Create a //htop// recipe and build it for your OS. | + | - Create a **htop** recipe and build it for your OS. |
- Create a custom layer which should contain the **htop** recipes and **busybox** bbappend. | - Create a custom layer which should contain the **htop** recipes and **busybox** bbappend. | ||
- | - Add support for **htop** inside //core-image-minimal// image. The enhanced //core-image-minimal// should be available inside the new created layer. | + | - Add support for **htop** inside //core-image-minimal// image. The enhanced //core-image-minimal// should be available inside the newly created layer. |