SlideShare a Scribd company logo
1 of 63
Download to read offline
1
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Yocto Project
un generatore automatico di
distribuzioni linux embedded
Marco Cavallini
2
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Agenda
Linux embedded
Sistemi di generazione automatica
Yocto Project
Storia
OpenEmbedded
Panoramica
Recipes, Layers, Classes, etc...
Configurazione
Installazione
git clone
Utilizzo
bitbake
Tools
HOB, Toaster
3
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
4
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Requisiti Linux Embedded
I requisiti indispensabili per un sistema linux embedded sono:
Dimensione contenuta
Busybox, etc...
Riproducibilità
Automatic build system
Affidabilità
Cross-compilation toolchain
5
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Creazione di una distribuzione
Approcci per creare una distribuzione Linux embedded :
Do It Yourself (DIY) Linux From Scratch (LFS)
Downscaling (Debian, Fedora, Slack)
Distro ARM preesistenti (Debian, Fedora)
Tools per generazione automatica...
6
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Build Tools
Alcuni dei più noti tool per la generazione automatica di sistemi
Linux embedded sono:
Crosstool (the precursor)
Crosstool­ng
PTXdist
Scratchbox
uClinux
OpenWRT
T2 Project
LTIB (Linux Target Image Builder)
EmDebian
Buildroot
OpenEmbedded
Yocto Project (Poky)
7
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
OpenEmbedded: storia
Altre distribuzioni hanno iniziato ad adottare OE: Unslug,
OpenSimpad, GPE Phone Edition, Ångström, OpenMoko e KaeilOS.
Ognuna di queste distribuzioni apporta il proprio bagaglio di
esperienze e di specifiche esigenze al progetto OE, aggiungendo
pacchetti e architetture supportate.
Il progetto OpenEmbedded è stato creato
originariamente nel 2003 da un gruppo di
sviluppatori del progetto OpenZaurus ed in
particolare da Chris Larson (overall architecture),
Holger Schurig (first implementation), e Michael
Lauer (first loads of packages and classes).
8
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Poky linux Yocto Project
OpenEmbedded, Poky, Yocto
Time
2003 2011
Open Zaurus
OpenEmbedded
(oe­classic)
oe­meta
poky
oe­core
meta...
meta­yocto
meta­yocto­bsp
9
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
10
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Build system - concetti
Il concetto sviluppato dai Build System, è di prendere del software
e creare qualcosa che si può eseguire su un altro dispositivo.
Host Target
Serial / 
Ethernet 
connection
PC x86
Embedded system
ARM, MIPS, x86, etc...
11
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Aspetti critici
Nel caso di sistemi embedded, ciò che rende difficile queste
procedure sono i seguenti aspetti:
Cross-compilazione: cross-compilare è difficile, e molto software
non ha alcun supporto per la cross-compilazione - tutti i pacchetti
inclusi nel OE sono cross-compilati;
Target e l'Host sono diversi: questo significa che non è possibile
compilare un programma e poi eseguirlo – esso è compilato per
funzionare con il sistema target, non sul sistema di Host di
compilazione.
Toolchains (compilatore, linker, ecc...) sono spesso difficili da
compilare. Le cross toolchains sono ancora più difficili. In genere si
tende a scaricare una toolchain fatta da qualcun altro.
12
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Caratteristiche
Naturalmente c'è molto di più che la semplice compilazione dei
pacchetti, alcune delle caratteristiche supportate comprendono:
Supporto per glibc e uclibc e recentemente elibc;
Generazione per diversi dispositivi target da un'unica base di
codice;
Automatizzare tutto ciò che è necessario per compilare e/o
eseguire il pacchetto (compilare le sue dipendenze);
Creazione di immagini disco flash (jffs2, ext2, gz, UBI, ecc...)
Supporto per vari formati di pacchettizzazione;
Costruzione automatica di tutti gli strumenti di cross-compilazione
necessari;
13
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
14
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Definizioni...
Yocto Project & OpenEmbedded
Definizioni
15
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Definizioni...
Recipe
Pron. / res pi/ˈ ə (http://www.oxfordlearnersdictionaries.com/definition/english/recipe)
Definisce dove scaricare e come compilare pacchetti sorgenti
ed eventuali patches
${LAYERDIR}/recipes-*/*/*.bb
Layer
Definisce liste di meta-pacchetti raggruppati
$HOME/yocto/poky/meta-*
Task
Definisce funzionalità predefinite all'interno di classi
${LAYERDIR}/classes/*.bbclass
16
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Fasi di generazione - Tasks
Per ogni progetto viene generalmente richiesta la stessa sequenza
dei seguenti compiti:
Scaricare il codice sorgente, e relativi file di supporto (come
initscripts);
Estrarre il codice sorgente e applicare tutte le patch che possono
essere necessarie;
Configurare il software, se necessario (come si fa eseguendo lo
script 'configure');
Compilare il tutto;
Pacchettizzare tutti i file in uno dei formati disponibili, come .deb o
.rpm o .ipk, pronti per l'installazione.
17
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Tasks - Build steps
do_fetchdo_fetch
STARTSTART
do_unpackdo_unpack
do_patchdo_patch
do_configuredo_configure
do_compiledo_compile
do_stagedo_stage
do_installdo_install
do_packagedo_package
ENDEND
18
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Layers
19
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Definizioni...
Image
Definisce liste di meta-pacchetti usati per la generazione
dell'immagine finale del sistema
${LAYERDIR}/recipes-image/*/*.bb
Machine
Definisce il BSP per l'architettura hardware supportata
${LAYERDIR}/conf/machine/*.conf
Distro
La distribuzione definisce tipo e versione dei pacchetti
${LAYERDIR}/conf/distro/*.conf
20
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Definizioni.
Le impostazioni di MACHINE+DISTRO+IMAGE definiscono come e
cosa generare
MACHINE DISTRO IMAGE
qemu86 poky
at91sama5d3 angstrom
BeagleBone poky core-image-minimal
core-image-minimal
core-image-sato
21
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
22
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Panoramica di Yocto Project
23
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Sorgenti
24
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Sorgenti - Fetch
25
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Sorgenti - Unpack
26
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione
27
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione dell'utente
28
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Package feeds
29
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Package feeds
30
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Yocto Project reference manual
Per maggiori dettagli
Yocto Project reference manual
http://www.yoctoproject.org/docs/2.0/ref-manual/ref-manual.html
31
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
32
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Procedura di installazione di Yocto Project
https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html
http://wiki.kaeilos.com/index.php/Yocto_Project_my_own_quick_start
33
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Fasi di utilizzo
Le fasi di utilizzo del sistema di build di Yocto :
Installazione (una sola volta)
Git clone dai repository
Configurazione (una sola volta)
Impostazione di MACHINE+DISTRO
Compilazione (ogni volta che è necessario)
Bitbake <NOME_IMAGE>
34
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Installazione dei pacchetti necessari dal repository della
distribuzione
Ubuntu e Debian
$ sudo apt­get install gawk wget git­core diffstat unzip  
texinfo gcc­multilib build­essential chrpath socat 
libsdl1.2­dev xterm
Fedora
$ sudo dnf install gawk make wget tar bzip2 gzip python  
unzip perl patch diffutils diffstat git cpp gcc gcc­c++ 
glibc­devel texinfo chrpath ccache perl­Data­Dumper 
perl­Text­ParseWords perl­Thread­Queue perl­bignum socat 
findutils which SDL­devel xterm
35
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Scaricamento sorgenti di Yocto dal repository git
$ mkdir $HOME/yocto
$ cd $HOME/yocto
$ git clone git://git.yoctoproject.org/poky ­b krogoth
 Cloning into 'poky'...
 remote: Counting objects: 226790, done.
 remote: Compressing objects: 100% (57465/57465), done.
 remote: Total 226790 (delta 165212), reused 225887 (delta 164327)
 Receiving objects: 100% (226790/226790), 100.98 MiB | 263 KiB/s, done.
 Resolving deltas: 100% (165212/165212), done.
36
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Albero dei sorgenti scaricati
$ .
   └── poky
       bitbake├──
       documentation├──
       LICENSE├──
       meta├──
       meta­hob├──
       meta­skeleton├──
       meta­yocto├──
       meta­yocto­bsp├──
       oe­init­build­env├──
       README├──
       README.hardware├──
       scripts └──
37
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Layer aggiuntivi (opzionali)
$ cd $HOME/yocto/poky
$ git clone git://git.openembedded.org/meta­openembedded ­b krogoth
$ cd $HOME/yocto/poky
$ git clone git://git.yoctoproject.org/meta­fsl­arm ­b krogoth
$ git clone https://github.com/Freescale/meta­fsl­arm­extra.git ­b krogoth
$ cd $HOME/yocto/poky
$ git clone https://github.com/meta­qt5/meta­qt5.git ­b krogoth 
38
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Albero con i layer aggiuntivi opzionali
$ .
   └── poky
       bitbake├──
       documentation├──
       LICENSE├──
       meta├──
       meta­hob├──
       ├── meta­fsl­arm
       ├── meta­fsl­arm­extra
       ├── meta­openembedded/
       ├── meta­qt5
       meta­skeleton├──
       meta­yocto├──
       meta­yocto­bsp├──
       oe­init­build­env├──
       README├──
       README.hardware├──
       scripts └──
39
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Prima inizializzazione
Questa procedura inizializza il sistema
Deve essere eseguita ogni volta che si avvia una console
   $ cd $HOME/yocto/poky
   $ source ./oe­init­build­env 
40
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione
Directory di build
   └── poky
       bitbake├──
       ├── build             <----- lanciare bitbake dentro questa dir
       documentation├──
       LICENSE├──
       meta├──
       meta­hob├──
       ├── meta­fsl­arm
       ├── meta­fsl­arm­extra
       ├── meta­openembedded/
       ├── meta­qt5
       meta­skeleton├──
       meta­yocto├──
       meta­yocto­bsp├──
       oe­init­build­env├──
       README├──
       README.hardware├──
       scripts └──
41
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione
E' necessario configurare due files
build/conf/bblayers.conf
build/conf/local.conf 
42
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione
Editare il file : build/conf/bblayers.conf
BBLAYERS ?= " 
/home/tux/yocto/poky/meta 
/home/tux/yocto/poky/meta­yocto 
/home/tux/yocto/poky/meta­yocto­bsp 
/home/tux/yocto/poky/meta­openembedded/meta­oe 
/home/tux/yocto/poky/meta­fsl­arm 
/home/tux/yocto/poky/meta­fsl­arm­extra 
"
 
43
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione
Editare il file : build/conf/local.conf
Cambiare I seguenti valori
 PACKAGE_CLASSES ?= "package_ipk"
 MACHINE ?= "beaglebone"
 
44
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Compilazione
Verificare sempre:
1. Impostazione dell'ambiente di sviluppo
       $ cd $HOME/yocto/poky
2. Impostazione della directory di build
       $ source ./oe­init­build­env 
 
45
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Compilazione
A questo punto possiamo creare la nostra prima immagine
Saremo nella directory di build
       $HOME/yocto/poky/build
E potremo lanciare bitbake
       $ bitbake core­image­minimal 
 
46
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Compilazione
$ bitbake core­image­minimal
Parsing recipes: 100% |#############################################################| Time: 00:00:56
Parsing of 899 .bb files complete (0 cached, 899 parsed). 1330 targets, 38 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION        = "1.28.0"
BUILD_SYS         = "i686­linux"
NATIVELSBSTRING   = "Ubuntu­14.04"
TARGET_SYS        = "i586­poky­linux"
MACHINE           = "beaglebone"
DISTRO            = "poky"
DISTRO_VERSION    = "2.0.1"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta              
meta­yocto        
meta­yocto­bsp    = "jethro:6dba9abd43f7584178de52b623c603a5d4fcec5c"
NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
Currently 4 running tasks (14 of 2050):
0: quilt­native­0.64­r0 do_compile (pid 3651)
1: autoconf­native­2.69­r11 do_fetch (pid 3653)
2: automake­native­1.15­r0 do_fetch (pid 3654)
3: libtool­native­2.4.6­r0 do_fetch (pid 3680) 
47
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Risultato della compilazione
$ cd $HOME/yocto/poky/build/tmp/deploy/images/beaglebone
core­image­minimal­beaglebone.jffs2
core­image­minimal­beaglebone.manifest
core­image­minimal­beaglebone.tar.bz2
MLO
README_­_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt
u­boot.img
zImage
zImage­am335x­boneblack.dtb
lista dei files ridotta
48
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Contenuto della microSD
MLO
u­boot.img
zImage
am335x­boneblack.dtb
uEenv.txt
Root filesystem
(ext4)
core­image­minimal­beaglebone
ext4
FAT16
49
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
50
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Creazione del cross-compilatore
Yocto ci permette di creare un cross-compilatore
       
       $ bitbake meta­toolchain 
 
51
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Cross-Development Toolchain
52
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione del cross-compilatore
Installazione del cross-compilatore (redistribuzione)
       
$ cd $HOME/yocto/poky/build/tmp/deploy/sdk
$ ./poky­glibc­x86_64­meta­toolchain­cortexa8hf­vfp­
neon­toolchain­2.0.1.sh
Verrà installato in /opt/poky/2.0.1
       
 
53
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Installazione del cross-compilatore
Il cross-compilatore verrà installato in        
/opt/poky/2.0.1/
E potrà essere usato dopo aver impostato
$ source /opt/poky/2.0.1/environment­setup­
cortexa8hf­vfp­neon­poky­linux­gnueabi
  
 
54
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
55
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione - menuconfig
Configurazione tramite un'interfaccia a caratteri “menuconfig”.
56
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Configurazione - HOB
Configurazione tramite pacchetto “HOB”.
57
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Toaster
Configurazione tramite pacchetto “Toaster”.
https://www.yoctoproject.org/docs/2.0/toaster-manual/toaster-manual.html
Django is a high-level Python Web framework that encourages rapid
development and clean, pragmatic design. Built by experienced
developers, it takes care of much of the hassle of Web development,
so you can focus on writing your app without needing to reinvent
the wheel. It’s free and open source.
58
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Toaster - Configurazione
59
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
60
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Libri
Embedded Linux Development with Yocto Project, by Otavio Salvador and
Daiane Agolini
Embedded Linux Projects Using Yocto Project Cookbook, by Alex Gonzaléz ***
Learning Embedded Linux using the Yocto Project, by Alexandru Vaduva
Using Yocto Project with BeagleBone Black, by H M Irfan Sadiq
Yocto for Raspberry Pi, by Pierre-Jean Texier and Petter Mabäcker
***
61
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
http://yoctoproject.org
Domande?
62
 KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
Rights to copy
Attribution – ShareAlike 3.0
You are free
to copy, distribute, display, and perform the work
to make derivative works
to make commercial use of the work
Under the following conditions
Attribution. You must give the original author credit.
Share Alike. If you alter, transform, or build upon this work, you
may distribute the resulting work only under a license identical to
this one.
For any reuse or distribution, you must make clear to others the license
terms of this work.
Any of these conditions can be waived if you get permission from the
copyright holder.
Your fair use and other rights are in no way affected by the above.
License text: http://creativecommons.org/licenses/by-sa/3.0/legalcode
© Copyright 2016, Marco Cavallini - KOAN sas
m.cavallini <AT> koansoftware.com
Corrections, suggestions,
contributions and translations are welcome!
ftp://ftp.koansoftware.com/public/talks/LinuxDay2016/
Custom Development
System integration
BSP creation fir new boards
System optimization
Linux kernel drivers
Application and interface development
KOAN services
Technical Support
Development tool and application support
Issue investigation and solution follow­up with 
mainstream developers
Help getting started
Embedded Linux Training
Unix and GNU/Linux basics
Linux kernel and drivers development
Real­time Linux
Yocto Project
Development and profiling tools
Lightweight tools for embedded systems
Root filesystem creation
Audio and multimedia
System optimization
Consulting
Help in decision making
System architecture
Identification of suitable technologies
Managing licensing requirements
System design and performance review
http://koansoftware.com

More Related Content

What's hot

The Yocto Project
The Yocto ProjectThe Yocto Project
The Yocto Projectrossburton
 
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...Marco Cavallini
 
Yocto project and open embedded training
Yocto project and open embedded trainingYocto project and open embedded training
Yocto project and open embedded trainingH Ming
 
Build your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto projectBuild your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto projectYen-Chin Lee
 
Eclipse IDE Yocto Plugin
Eclipse IDE Yocto PluginEclipse IDE Yocto Plugin
Eclipse IDE Yocto Plugincudma
 
Yocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerYocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerSherif Mousa
 
Building Emmbedded Linux with Yocto project
Building Emmbedded Linux with Yocto projectBuilding Emmbedded Linux with Yocto project
Building Emmbedded Linux with Yocto projecttwcoimbatore
 
Yocto Project Kernel Lab hands-on
Yocto Project Kernel Lab hands-onYocto Project Kernel Lab hands-on
Yocto Project Kernel Lab hands-onTrevor Woerner
 
Jonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel ReportJonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel Reportlinuxlab_conf
 
Creating new Tizen profiles using the Yocto Project
Creating new Tizen profiles  using the Yocto ProjectCreating new Tizen profiles  using the Yocto Project
Creating new Tizen profiles using the Yocto ProjectLeon Anavi
 
Why you should use the Yocto Project
Why you should use the Yocto ProjectWhy you should use the Yocto Project
Why you should use the Yocto Projectrossburton
 
Yocto Project Kernel Lab, Hands-On
Yocto Project Kernel Lab, Hands-OnYocto Project Kernel Lab, Hands-On
Yocto Project Kernel Lab, Hands-OnTrevor Woerner
 
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...Anne Nicolas
 
Embedded Linux primer
Embedded Linux primerEmbedded Linux primer
Embedded Linux primerDrew Fustini
 
The end of embedded Linux (as we know it)
The end of embedded Linux (as we know it)The end of embedded Linux (as we know it)
The end of embedded Linux (as we know it)Chris Simmonds
 
[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded Framework[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded FrameworkICS
 
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !Pierre-jean Texier
 
Crafting GNU/Linux distributions for Embedded target from Scratch/Source
Crafting GNU/Linux distributions for Embedded target from Scratch/SourceCrafting GNU/Linux distributions for Embedded target from Scratch/Source
Crafting GNU/Linux distributions for Embedded target from Scratch/SourceSourabh Singh Tomar
 

What's hot (20)

The Yocto Project
The Yocto ProjectThe Yocto Project
The Yocto Project
 
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...
Marco Cavallini @ LinuxLab 2018 : Workshop Yocto Project, an automatic genera...
 
Yocto project and open embedded training
Yocto project and open embedded trainingYocto project and open embedded training
Yocto project and open embedded training
 
Yocto project
Yocto projectYocto project
Yocto project
 
Build your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto projectBuild your own embedded linux distributions by yocto project
Build your own embedded linux distributions by yocto project
 
Eclipse IDE Yocto Plugin
Eclipse IDE Yocto PluginEclipse IDE Yocto Plugin
Eclipse IDE Yocto Plugin
 
Yocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerYocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution Maker
 
Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012
 
Building Emmbedded Linux with Yocto project
Building Emmbedded Linux with Yocto projectBuilding Emmbedded Linux with Yocto project
Building Emmbedded Linux with Yocto project
 
Yocto Project Kernel Lab hands-on
Yocto Project Kernel Lab hands-onYocto Project Kernel Lab hands-on
Yocto Project Kernel Lab hands-on
 
Jonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel ReportJonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel Report
 
Creating new Tizen profiles using the Yocto Project
Creating new Tizen profiles  using the Yocto ProjectCreating new Tizen profiles  using the Yocto Project
Creating new Tizen profiles using the Yocto Project
 
Why you should use the Yocto Project
Why you should use the Yocto ProjectWhy you should use the Yocto Project
Why you should use the Yocto Project
 
Yocto Project Kernel Lab, Hands-On
Yocto Project Kernel Lab, Hands-OnYocto Project Kernel Lab, Hands-On
Yocto Project Kernel Lab, Hands-On
 
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...
Embedded Recipes 2017 - Introduction to Yocto Project/OpenEmbedded - Mylène J...
 
Embedded Linux primer
Embedded Linux primerEmbedded Linux primer
Embedded Linux primer
 
The end of embedded Linux (as we know it)
The end of embedded Linux (as we know it)The end of embedded Linux (as we know it)
The end of embedded Linux (as we know it)
 
[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded Framework[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded Framework
 
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
Diving into SWUpdate: adding new platform support in 30minutes with Yocto/OE !
 
Crafting GNU/Linux distributions for Embedded target from Scratch/Source
Crafting GNU/Linux distributions for Embedded target from Scratch/SourceCrafting GNU/Linux distributions for Embedded target from Scratch/Source
Crafting GNU/Linux distributions for Embedded target from Scratch/Source
 

Viewers also liked

ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...Marco Cavallini
 
Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料Nobuhiro Iwamatsu
 
Introduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxIntroduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxHiroshi Sakate
 
Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...Benjamin Cabé
 
Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え Nobuhiro Iwamatsu
 
I/o and memory interfacing
I/o and memory interfacingI/o and memory interfacing
I/o and memory interfacingRuchi Srivastava
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Nobuhiro Iwamatsu
 
Software update for IoT: the current state of play
Software update for IoT: the current state of playSoftware update for IoT: the current state of play
Software update for IoT: the current state of playChris Simmonds
 
Understanding memory management
Understanding memory managementUnderstanding memory management
Understanding memory managementGokul Vasan
 
Software development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuSoftware development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuArm
 
SOC Processors Used in SOC
SOC Processors Used in SOCSOC Processors Used in SOC
SOC Processors Used in SOCA B Shinde
 
Operating Systems: Data Structures
Operating Systems: Data StructuresOperating Systems: Data Structures
Operating Systems: Data StructuresDamian T. Gordon
 
Operating Systems: What happen in 2016?
Operating Systems: What happen in 2016?Operating Systems: What happen in 2016?
Operating Systems: What happen in 2016?Damian T. Gordon
 
Operating Systems: File Management
Operating Systems: File ManagementOperating Systems: File Management
Operating Systems: File ManagementDamian T. Gordon
 
Operating Systems 1: Syllabus
Operating Systems 1: SyllabusOperating Systems 1: Syllabus
Operating Systems 1: SyllabusDamian T. Gordon
 
Operating Systems 1: Introduction
Operating Systems 1: IntroductionOperating Systems 1: Introduction
Operating Systems 1: IntroductionDamian T. Gordon
 
Operating Systems: Computer Security
Operating Systems: Computer SecurityOperating Systems: Computer Security
Operating Systems: Computer SecurityDamian T. Gordon
 

Viewers also liked (20)

ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
 
Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料
 
Introduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxIntroduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linux
 
Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...
 
Tsume git
Tsume gitTsume git
Tsume git
 
Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え
 
I/o and memory interfacing
I/o and memory interfacingI/o and memory interfacing
I/o and memory interfacing
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
 
Software update for IoT: the current state of play
Software update for IoT: the current state of playSoftware update for IoT: the current state of play
Software update for IoT: the current state of play
 
Understanding memory management
Understanding memory managementUnderstanding memory management
Understanding memory management
 
Software development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuSoftware development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiu
 
SOC Processors Used in SOC
SOC Processors Used in SOCSOC Processors Used in SOC
SOC Processors Used in SOC
 
Operating Systems: Data Structures
Operating Systems: Data StructuresOperating Systems: Data Structures
Operating Systems: Data Structures
 
Operating Systems: What happen in 2016?
Operating Systems: What happen in 2016?Operating Systems: What happen in 2016?
Operating Systems: What happen in 2016?
 
Simple Data Compression
Simple Data CompressionSimple Data Compression
Simple Data Compression
 
Operating Systems: File Management
Operating Systems: File ManagementOperating Systems: File Management
Operating Systems: File Management
 
Operating Systems 1: Syllabus
Operating Systems 1: SyllabusOperating Systems 1: Syllabus
Operating Systems 1: Syllabus
 
04 cache memory
04 cache memory04 cache memory
04 cache memory
 
Operating Systems 1: Introduction
Operating Systems 1: IntroductionOperating Systems 1: Introduction
Operating Systems 1: Introduction
 
Operating Systems: Computer Security
Operating Systems: Computer SecurityOperating Systems: Computer Security
Operating Systems: Computer Security
 

Similar to Linux day 2016 Yocto Project

Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...linuxlab_conf
 
Kernel Recipes 2013 - Easy rootfs using Buildroot
Kernel Recipes 2013 - Easy rootfs using BuildrootKernel Recipes 2013 - Easy rootfs using Buildroot
Kernel Recipes 2013 - Easy rootfs using BuildrootAnne Nicolas
 
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorUplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorSatya Harish
 
Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)RuggedBoardGroup
 
FOSDEM_2019_Buildroot_RISCV.pdf
FOSDEM_2019_Buildroot_RISCV.pdfFOSDEM_2019_Buildroot_RISCV.pdf
FOSDEM_2019_Buildroot_RISCV.pdfssuser30e7d2
 
127 iio a-new-subsystem
127 iio a-new-subsystem127 iio a-new-subsystem
127 iio a-new-subsystemtarak reddy
 
Os Grossupdated
Os GrossupdatedOs Grossupdated
Os Grossupdatedoscon2007
 
Fn project quick installation guide
Fn project quick installation guideFn project quick installation guide
Fn project quick installation guideJohan Louwers
 
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Job
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily JobLuca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Job
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Joblinuxlab_conf
 
How to Choose a Software Update Mechanism for Embedded Linux Devices
How to Choose a Software Update Mechanism for Embedded Linux DevicesHow to Choose a Software Update Mechanism for Embedded Linux Devices
How to Choose a Software Update Mechanism for Embedded Linux DevicesLeon Anavi
 
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner example
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner exampleKernel Recipes 2014 - Supporting a new ARM platform: the Allwinner example
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner exampleAnne Nicolas
 
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...corehard_by
 
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore SimputerEmbedding Linux On The Encore Simputer
Embedding Linux On The Encore SimputerSatpal Parmar
 
Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018Mender.io
 
Fight with linux reverse
Fight with linux reverseFight with linux reverse
Fight with linux reversechao yang
 
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...Poky meets Debian: Understanding how to make an embedded Linux by using an ex...
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...Yoshitake Kobayashi
 
Fedora on risc-v_tokyo_30_sep_2019_v4
Fedora on risc-v_tokyo_30_sep_2019_v4Fedora on risc-v_tokyo_30_sep_2019_v4
Fedora on risc-v_tokyo_30_sep_2019_v4Wei Fu
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMSherif Mousa
 

Similar to Linux day 2016 Yocto Project (20)

Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...
Marco Cavallini - Yocto Project, an automatic generator of embedded Linux dis...
 
Kernel Recipes 2013 - Easy rootfs using Buildroot
Kernel Recipes 2013 - Easy rootfs using BuildrootKernel Recipes 2013 - Easy rootfs using Buildroot
Kernel Recipes 2013 - Easy rootfs using Buildroot
 
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processorUplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
 
Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)Embedded Linux BSP Training (Intro)
Embedded Linux BSP Training (Intro)
 
FOSDEM_2019_Buildroot_RISCV.pdf
FOSDEM_2019_Buildroot_RISCV.pdfFOSDEM_2019_Buildroot_RISCV.pdf
FOSDEM_2019_Buildroot_RISCV.pdf
 
127 iio a-new-subsystem
127 iio a-new-subsystem127 iio a-new-subsystem
127 iio a-new-subsystem
 
127 iio a-new-subsystem
127 iio a-new-subsystem127 iio a-new-subsystem
127 iio a-new-subsystem
 
Os Grossupdated
Os GrossupdatedOs Grossupdated
Os Grossupdated
 
Fn project quick installation guide
Fn project quick installation guideFn project quick installation guide
Fn project quick installation guide
 
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Job
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily JobLuca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Job
Luca Ceresoli - Buildroot vs Yocto: Differences for Your Daily Job
 
How to Choose a Software Update Mechanism for Embedded Linux Devices
How to Choose a Software Update Mechanism for Embedded Linux DevicesHow to Choose a Software Update Mechanism for Embedded Linux Devices
How to Choose a Software Update Mechanism for Embedded Linux Devices
 
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner example
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner exampleKernel Recipes 2014 - Supporting a new ARM platform: the Allwinner example
Kernel Recipes 2014 - Supporting a new ARM platform: the Allwinner example
 
Linux internals v4
Linux internals v4Linux internals v4
Linux internals v4
 
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
C++ CoreHard Autumn 2018. Создание пакетов для открытых библиотек через conan...
 
Embedding Linux On The Encore Simputer
Embedding Linux On The Encore SimputerEmbedding Linux On The Encore Simputer
Embedding Linux On The Encore Simputer
 
Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018Embedded Linux Build Systems - Texas Linux Fest 2018
Embedded Linux Build Systems - Texas Linux Fest 2018
 
Fight with linux reverse
Fight with linux reverseFight with linux reverse
Fight with linux reverse
 
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...Poky meets Debian: Understanding how to make an embedded Linux by using an ex...
Poky meets Debian: Understanding how to make an embedded Linux by using an ex...
 
Fedora on risc-v_tokyo_30_sep_2019_v4
Fedora on risc-v_tokyo_30_sep_2019_v4Fedora on risc-v_tokyo_30_sep_2019_v4
Fedora on risc-v_tokyo_30_sep_2019_v4
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARM
 

Recently uploaded

eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdfSteve Caron
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Mastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxMastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxAS Design & AST.
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
Effort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsEffort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsDEEPRAJ PATHAK
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxUnderstanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxSasikiranMarri
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdfAndrey Devyatkin
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Key Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapKey Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapIshara Amarasekera
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...kalichargn70th171
 

Recently uploaded (20)

eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Mastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxMastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptx
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
Effort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsEffort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software Projects
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxUnderstanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Key Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapKey Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery Roadmap
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
 

Linux day 2016 Yocto Project

  • 1. 1  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Yocto Project un generatore automatico di distribuzioni linux embedded Marco Cavallini
  • 2. 2  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Agenda Linux embedded Sistemi di generazione automatica Yocto Project Storia OpenEmbedded Panoramica Recipes, Layers, Classes, etc... Configurazione Installazione git clone Utilizzo bitbake Tools HOB, Toaster
  • 3. 3  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 4. 4  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Requisiti Linux Embedded I requisiti indispensabili per un sistema linux embedded sono: Dimensione contenuta Busybox, etc... Riproducibilità Automatic build system Affidabilità Cross-compilation toolchain
  • 5. 5  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Creazione di una distribuzione Approcci per creare una distribuzione Linux embedded : Do It Yourself (DIY) Linux From Scratch (LFS) Downscaling (Debian, Fedora, Slack) Distro ARM preesistenti (Debian, Fedora) Tools per generazione automatica...
  • 6. 6  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Build Tools Alcuni dei più noti tool per la generazione automatica di sistemi Linux embedded sono: Crosstool (the precursor) Crosstool­ng PTXdist Scratchbox uClinux OpenWRT T2 Project LTIB (Linux Target Image Builder) EmDebian Buildroot OpenEmbedded Yocto Project (Poky)
  • 7. 7  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com OpenEmbedded: storia Altre distribuzioni hanno iniziato ad adottare OE: Unslug, OpenSimpad, GPE Phone Edition, Ångström, OpenMoko e KaeilOS. Ognuna di queste distribuzioni apporta il proprio bagaglio di esperienze e di specifiche esigenze al progetto OE, aggiungendo pacchetti e architetture supportate. Il progetto OpenEmbedded è stato creato originariamente nel 2003 da un gruppo di sviluppatori del progetto OpenZaurus ed in particolare da Chris Larson (overall architecture), Holger Schurig (first implementation), e Michael Lauer (first loads of packages and classes).
  • 8. 8  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Poky linux Yocto Project OpenEmbedded, Poky, Yocto Time 2003 2011 Open Zaurus OpenEmbedded (oe­classic) oe­meta poky oe­core meta... meta­yocto meta­yocto­bsp
  • 9. 9  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 10. 10  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Build system - concetti Il concetto sviluppato dai Build System, è di prendere del software e creare qualcosa che si può eseguire su un altro dispositivo. Host Target Serial /  Ethernet  connection PC x86 Embedded system ARM, MIPS, x86, etc...
  • 11. 11  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Aspetti critici Nel caso di sistemi embedded, ciò che rende difficile queste procedure sono i seguenti aspetti: Cross-compilazione: cross-compilare è difficile, e molto software non ha alcun supporto per la cross-compilazione - tutti i pacchetti inclusi nel OE sono cross-compilati; Target e l'Host sono diversi: questo significa che non è possibile compilare un programma e poi eseguirlo – esso è compilato per funzionare con il sistema target, non sul sistema di Host di compilazione. Toolchains (compilatore, linker, ecc...) sono spesso difficili da compilare. Le cross toolchains sono ancora più difficili. In genere si tende a scaricare una toolchain fatta da qualcun altro.
  • 12. 12  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Caratteristiche Naturalmente c'è molto di più che la semplice compilazione dei pacchetti, alcune delle caratteristiche supportate comprendono: Supporto per glibc e uclibc e recentemente elibc; Generazione per diversi dispositivi target da un'unica base di codice; Automatizzare tutto ciò che è necessario per compilare e/o eseguire il pacchetto (compilare le sue dipendenze); Creazione di immagini disco flash (jffs2, ext2, gz, UBI, ecc...) Supporto per vari formati di pacchettizzazione; Costruzione automatica di tutti gli strumenti di cross-compilazione necessari;
  • 13. 13  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 14. 14  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Definizioni... Yocto Project & OpenEmbedded Definizioni
  • 15. 15  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Definizioni... Recipe Pron. / res pi/ˈ ə (http://www.oxfordlearnersdictionaries.com/definition/english/recipe) Definisce dove scaricare e come compilare pacchetti sorgenti ed eventuali patches ${LAYERDIR}/recipes-*/*/*.bb Layer Definisce liste di meta-pacchetti raggruppati $HOME/yocto/poky/meta-* Task Definisce funzionalità predefinite all'interno di classi ${LAYERDIR}/classes/*.bbclass
  • 16. 16  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Fasi di generazione - Tasks Per ogni progetto viene generalmente richiesta la stessa sequenza dei seguenti compiti: Scaricare il codice sorgente, e relativi file di supporto (come initscripts); Estrarre il codice sorgente e applicare tutte le patch che possono essere necessarie; Configurare il software, se necessario (come si fa eseguendo lo script 'configure'); Compilare il tutto; Pacchettizzare tutti i file in uno dei formati disponibili, come .deb o .rpm o .ipk, pronti per l'installazione.
  • 17. 17  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Tasks - Build steps do_fetchdo_fetch STARTSTART do_unpackdo_unpack do_patchdo_patch do_configuredo_configure do_compiledo_compile do_stagedo_stage do_installdo_install do_packagedo_package ENDEND
  • 18. 18  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Layers
  • 19. 19  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Definizioni... Image Definisce liste di meta-pacchetti usati per la generazione dell'immagine finale del sistema ${LAYERDIR}/recipes-image/*/*.bb Machine Definisce il BSP per l'architettura hardware supportata ${LAYERDIR}/conf/machine/*.conf Distro La distribuzione definisce tipo e versione dei pacchetti ${LAYERDIR}/conf/distro/*.conf
  • 20. 20  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Definizioni. Le impostazioni di MACHINE+DISTRO+IMAGE definiscono come e cosa generare MACHINE DISTRO IMAGE qemu86 poky at91sama5d3 angstrom BeagleBone poky core-image-minimal core-image-minimal core-image-sato
  • 21. 21  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 22. 22  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Panoramica di Yocto Project
  • 23. 23  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Sorgenti
  • 24. 24  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Sorgenti - Fetch
  • 25. 25  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Sorgenti - Unpack
  • 26. 26  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione
  • 27. 27  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione dell'utente
  • 28. 28  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Package feeds
  • 29. 29  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Package feeds
  • 30. 30  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Yocto Project reference manual Per maggiori dettagli Yocto Project reference manual http://www.yoctoproject.org/docs/2.0/ref-manual/ref-manual.html
  • 31. 31  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 32. 32  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Procedura di installazione di Yocto Project https://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html http://wiki.kaeilos.com/index.php/Yocto_Project_my_own_quick_start
  • 33. 33  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Fasi di utilizzo Le fasi di utilizzo del sistema di build di Yocto : Installazione (una sola volta) Git clone dai repository Configurazione (una sola volta) Impostazione di MACHINE+DISTRO Compilazione (ogni volta che è necessario) Bitbake <NOME_IMAGE>
  • 34. 34  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Installazione dei pacchetti necessari dal repository della distribuzione Ubuntu e Debian $ sudo apt­get install gawk wget git­core diffstat unzip   texinfo gcc­multilib build­essential chrpath socat  libsdl1.2­dev xterm Fedora $ sudo dnf install gawk make wget tar bzip2 gzip python   unzip perl patch diffutils diffstat git cpp gcc gcc­c++  glibc­devel texinfo chrpath ccache perl­Data­Dumper  perl­Text­ParseWords perl­Thread­Queue perl­bignum socat  findutils which SDL­devel xterm
  • 35. 35  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Scaricamento sorgenti di Yocto dal repository git $ mkdir $HOME/yocto $ cd $HOME/yocto $ git clone git://git.yoctoproject.org/poky ­b krogoth  Cloning into 'poky'...  remote: Counting objects: 226790, done.  remote: Compressing objects: 100% (57465/57465), done.  remote: Total 226790 (delta 165212), reused 225887 (delta 164327)  Receiving objects: 100% (226790/226790), 100.98 MiB | 263 KiB/s, done.  Resolving deltas: 100% (165212/165212), done.
  • 36. 36  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Albero dei sorgenti scaricati $ .    └── poky        bitbake├──        documentation├──        LICENSE├──        meta├──        meta­hob├──        meta­skeleton├──        meta­yocto├──        meta­yocto­bsp├──        oe­init­build­env├──        README├──        README.hardware├──        scripts └──
  • 37. 37  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Layer aggiuntivi (opzionali) $ cd $HOME/yocto/poky $ git clone git://git.openembedded.org/meta­openembedded ­b krogoth $ cd $HOME/yocto/poky $ git clone git://git.yoctoproject.org/meta­fsl­arm ­b krogoth $ git clone https://github.com/Freescale/meta­fsl­arm­extra.git ­b krogoth $ cd $HOME/yocto/poky $ git clone https://github.com/meta­qt5/meta­qt5.git ­b krogoth 
  • 38. 38  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Albero con i layer aggiuntivi opzionali $ .    └── poky        bitbake├──        documentation├──        LICENSE├──        meta├──        meta­hob├──        ├── meta­fsl­arm        ├── meta­fsl­arm­extra        ├── meta­openembedded/        ├── meta­qt5        meta­skeleton├──        meta­yocto├──        meta­yocto­bsp├──        oe­init­build­env├──        README├──        README.hardware├──        scripts └──
  • 39. 39  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Prima inizializzazione Questa procedura inizializza il sistema Deve essere eseguita ogni volta che si avvia una console    $ cd $HOME/yocto/poky    $ source ./oe­init­build­env 
  • 40. 40  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione Directory di build    └── poky        bitbake├──        ├── build             <----- lanciare bitbake dentro questa dir        documentation├──        LICENSE├──        meta├──        meta­hob├──        ├── meta­fsl­arm        ├── meta­fsl­arm­extra        ├── meta­openembedded/        ├── meta­qt5        meta­skeleton├──        meta­yocto├──        meta­yocto­bsp├──        oe­init­build­env├──        README├──        README.hardware├──        scripts └──
  • 41. 41  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione E' necessario configurare due files build/conf/bblayers.conf build/conf/local.conf 
  • 42. 42  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione Editare il file : build/conf/bblayers.conf BBLAYERS ?= "  /home/tux/yocto/poky/meta  /home/tux/yocto/poky/meta­yocto  /home/tux/yocto/poky/meta­yocto­bsp  /home/tux/yocto/poky/meta­openembedded/meta­oe  /home/tux/yocto/poky/meta­fsl­arm  /home/tux/yocto/poky/meta­fsl­arm­extra  "  
  • 43. 43  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione Editare il file : build/conf/local.conf Cambiare I seguenti valori  PACKAGE_CLASSES ?= "package_ipk"  MACHINE ?= "beaglebone"  
  • 44. 44  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Compilazione Verificare sempre: 1. Impostazione dell'ambiente di sviluppo        $ cd $HOME/yocto/poky 2. Impostazione della directory di build        $ source ./oe­init­build­env   
  • 45. 45  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Compilazione A questo punto possiamo creare la nostra prima immagine Saremo nella directory di build        $HOME/yocto/poky/build E potremo lanciare bitbake        $ bitbake core­image­minimal   
  • 46. 46  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Compilazione $ bitbake core­image­minimal Parsing recipes: 100% |#############################################################| Time: 00:00:56 Parsing of 899 .bb files complete (0 cached, 899 parsed). 1330 targets, 38 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Build Configuration: BB_VERSION        = "1.28.0" BUILD_SYS         = "i686­linux" NATIVELSBSTRING   = "Ubuntu­14.04" TARGET_SYS        = "i586­poky­linux" MACHINE           = "beaglebone" DISTRO            = "poky" DISTRO_VERSION    = "2.0.1" TUNE_FEATURES     = "m32 i586" TARGET_FPU        = "" meta               meta­yocto         meta­yocto­bsp    = "jethro:6dba9abd43f7584178de52b623c603a5d4fcec5c" NOTE: Preparing RunQueue NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks Currently 4 running tasks (14 of 2050): 0: quilt­native­0.64­r0 do_compile (pid 3651) 1: autoconf­native­2.69­r11 do_fetch (pid 3653) 2: automake­native­1.15­r0 do_fetch (pid 3654) 3: libtool­native­2.4.6­r0 do_fetch (pid 3680) 
  • 47. 47  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Risultato della compilazione $ cd $HOME/yocto/poky/build/tmp/deploy/images/beaglebone core­image­minimal­beaglebone.jffs2 core­image­minimal­beaglebone.manifest core­image­minimal­beaglebone.tar.bz2 MLO README_­_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt u­boot.img zImage zImage­am335x­boneblack.dtb lista dei files ridotta
  • 48. 48  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Contenuto della microSD MLO u­boot.img zImage am335x­boneblack.dtb uEenv.txt Root filesystem (ext4) core­image­minimal­beaglebone ext4 FAT16
  • 49. 49  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 50. 50  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Creazione del cross-compilatore Yocto ci permette di creare un cross-compilatore                $ bitbake meta­toolchain   
  • 51. 51  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Cross-Development Toolchain
  • 52. 52  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione del cross-compilatore Installazione del cross-compilatore (redistribuzione)         $ cd $HOME/yocto/poky/build/tmp/deploy/sdk $ ./poky­glibc­x86_64­meta­toolchain­cortexa8hf­vfp­ neon­toolchain­2.0.1.sh Verrà installato in /opt/poky/2.0.1          
  • 53. 53  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Installazione del cross-compilatore Il cross-compilatore verrà installato in         /opt/poky/2.0.1/ E potrà essere usato dopo aver impostato $ source /opt/poky/2.0.1/environment­setup­ cortexa8hf­vfp­neon­poky­linux­gnueabi     
  • 54. 54  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 55. 55  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione - menuconfig Configurazione tramite un'interfaccia a caratteri “menuconfig”.
  • 56. 56  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Configurazione - HOB Configurazione tramite pacchetto “HOB”.
  • 57. 57  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Toaster Configurazione tramite pacchetto “Toaster”. https://www.yoctoproject.org/docs/2.0/toaster-manual/toaster-manual.html Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.
  • 58. 58  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Toaster - Configurazione
  • 59. 59  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com
  • 60. 60  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Libri Embedded Linux Development with Yocto Project, by Otavio Salvador and Daiane Agolini Embedded Linux Projects Using Yocto Project Cookbook, by Alex Gonzaléz *** Learning Embedded Linux using the Yocto Project, by Alexandru Vaduva Using Yocto Project with BeagleBone Black, by H M Irfan Sadiq Yocto for Raspberry Pi, by Pierre-Jean Texier and Petter Mabäcker ***
  • 61. 61  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com http://yoctoproject.org Domande?
  • 62. 62  KOAN - Kernel, drivers and embedded Linux development, consulting, training and support http//KoanSoftware.com Rights to copy Attribution – ShareAlike 3.0 You are free to copy, distribute, display, and perform the work to make derivative works to make commercial use of the work Under the following conditions Attribution. You must give the original author credit. Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. License text: http://creativecommons.org/licenses/by-sa/3.0/legalcode © Copyright 2016, Marco Cavallini - KOAN sas m.cavallini <AT> koansoftware.com Corrections, suggestions, contributions and translations are welcome! ftp://ftp.koansoftware.com/public/talks/LinuxDay2016/
  • 63. Custom Development System integration BSP creation fir new boards System optimization Linux kernel drivers Application and interface development KOAN services Technical Support Development tool and application support Issue investigation and solution follow­up with  mainstream developers Help getting started Embedded Linux Training Unix and GNU/Linux basics Linux kernel and drivers development Real­time Linux Yocto Project Development and profiling tools Lightweight tools for embedded systems Root filesystem creation Audio and multimedia System optimization Consulting Help in decision making System architecture Identification of suitable technologies Managing licensing requirements System design and performance review http://koansoftware.com