Exercitiu 3 curs Yocto

Acest exercitiu va fi facut pe sursele downloadate de poky.

  • Inspectie reteta precum „bc“, „flac“ si „ofono“:
 $> vim meta/recipes-extended/bc 

Utilizeaza „LIC_FILES_CHKSUM“ si „SRC_URI. Defineste dependinte de build cu ajutorul tag-ului „DEPENDS“

$> vim meta/recipes-multimedia/flac

Include patch-uri aplicate surselor. Particularizează optiunile de configurare pentru autoconf cu ajutorul tagului EXTRA_OECONF. Suprascrie pasul do_configure(). Sparge output-ul in packete binare multiple

$> vim meta/recipes-connectivity/ofono

Utilizeaza fisierele “.inc“ pentru a partaja metadata cu mai multe retete. Seteaza conditia de build „DEPENDS“ pe baza caracteristicilor distributiei. Seteaza un serviciu de initializare

  • Scrieti o aplicatie care afiseaza „Hello World!“ la rulare. Exemplul va pune codul sursa in fisierul „helloworld.c“.
$> cat << DONE > helloworld.c
$> #include "stdio.h"
$> void main() {
$> 	   printf("Hello World!\n");
$> } 
$> DONE
  • Aranjati codul sursa al retetei ca in cazul retetelor observate.
    • In directorul sources atasati fisierul „helloworld.c“
    • Langa acest director atasati retea creata.
  • Scrieti reteta pentru aceasta aplicatie. Numele retetei este „helloworld_1.0.0.bb“ iar codul sursa a fost atasat de asemenea.
DESCRIPTION = "Hello world sample program"
PRIORITY = "optional"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58"

PACKAGES="${PN}"
IMAGE_INSTALL_append = " helloworld "

PR = "r0"
SRC_URI = "file://sources/helloworld.c"
S = "${WORKDIR}/sources/"

do_compile () {
  ${CC} ${CFLAGS} ${LDFLAGS} -o helloworld helloworld.c
}
do_install () {
  install -d ${D}${bindir}/
  install -m 0755 ${S}/helloworld ${D}${bindir}/
}
FILES_${PN} = "${bindir}/helloworld"
  • Buildati reteta cu Bitbake.
$> bitbake helloworld
sisteme_integrate/rezolvari/yocto_readme3.txt · Ultima modificare: 2013/07/30 21:31 de către alexandru.vaduva
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0