This shows you the differences between two versions of the page.
iot:labs:09 [2017/10/02 23:48] jan.vaduva created |
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===== |
Open the Quick start guide to Yocto Project, located at: [[https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html|Quick start guide]] | Open the Quick start guide to Yocto Project, located at: [[https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html|Quick start guide]] | ||
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: | + | - 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> | ||
+ | - Edit //conf/local.conf// and set //MACHINE// as //qemux86// and any extra required variables. | ||
+ | - 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> | ||
- | <code>$ git clone -b pyro git://git.yoctoproject.org/poky.git</code> | ||
- | //or// | + | ===== Exercises===== |
+ | - Finish a successful Yocto Project build. | ||
+ | - Find a poky version that contains Hob and configure a Hob image. | ||
+ | - Setup and start Toaster on port //8399//. | ||
+ | - Get the standards SDK installer and build **htop** package 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. | ||
+ | - Add support for **htop** inside //core-image-minimal// image. The enhanced //core-image-minimal// should be available inside the newly created layer. | ||
- | <code>$ wget downloads.yoctoproject.org/releases/yocto/yocto-2.3.2/poky-pyro-17.0.2.tar.bz2</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 | ||
- | |||
- | Build the OS image: <code>$ bitbake core-image-minimal</code> | ||
- | |||
- | Boot the OS image of your chose <code>$ runqemu qemux86</code> | ||
- | If <code>MACHINE=qemux86</code> | ||