¡Esta es una revisión vieja del documento!
Tabla de Contenidos
How To de Yocto Project
Introducción
Yocto Project es un conjunto de herramientas de desarrollo y meta datos (paquetes y scripts), para crear una distribucion Linux a medida para un hardware especifico y altamente configurable.
- Bitbake
binaris q que compila y crea las imagenes que se crea y como
- Metadata
- Configuracion(.conf)
configuraciones de salida de las compilaciones, flags del compilador, organizacion de layer
- Clases(.bbclass)
Se los puede definir como scripts que se encargan de “hacer todo” genera los autotools el filesystem o como se compila el kernel\ o como generar paquetes tipo rpm deb, las imagenes,- etc
- Recipes(.bb)
los paquetes que entran en la compilacion, muy parecido a los EBUILDS de Gentoo Linux, tienen informacion de como se compila, de donde se baja el código, etc
Ejemplos
Crear y Compilar y Correr una imagen para Quemu
Usar al bash como interprete de comandos:
sudo dpkg-reconfigure dash
y luego pongo no, o
sudo dpkg-reconfigure bash
dependiendo de la distribución de ubuntu/debian Instalo los paquetes necesarios para la compilación:
sudo apt-get install sed wget cvs subversion git-core coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff libtool xterm
para bajar tenemos que bajar una version de poky del yocto project Bajar poky[VERSION].tar.bz2
descomprimir el paquete, y generar el entorno $ tar xvfJ poky-edison-6.0.1.tar.bz2 $ cd poky-edison-6.0.1/ $ source oe-init-build-env
Editar el archivo local.conf, setear cantidad de threads de compilación y el procesador del Target
conf/local.conf
se puede agregar algun recipe solo sin layer como algun programa partiicular, al igualq ue en el local .conf
conf/bblayers.conf Crear Imagen [minimal sato sato-sdk etc] $ bitbake core-image-minimal
resuelve dependencias compila y genera los paquetes de salida(deb rpm ipk) y las imagenes del os discos
$ runqemu qemux86 core-image-minimal
Crear imagen Para los Kits embebidos SYS9402
Usar al bash como interprete de comandos:
sudo dpkg-reconfigure dash
y luego pongo no, o
sudo dpkg-reconfigure bash
dependiendo de la distribución de ubuntu/debian Instalo los paquetes necesarios para la compilación:
sudo apt-get install sed wget cvs subversion git-core coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff libtool xterm
para bajar tenemos que bajar una version de poky del yocto project Bajar poky[VERSION].tar.bz2
descomprimir el paquete, y generar el entorno $ tar xvfJ poky-edison-6.0.1.tar.bz2 $ cd poky-edison-6.0.1/ $ source oe-init-build-env
Editar el archivo local.conf, setear cantidad de threads de compilación y el procesador del Target
conf/local.conf
se puede agregar algun recipe solo sin layer como algun programa partiicular, al igualq ue en el local .conf
conf/bblayers.conf Crear Imagen [minimal sato sato-sdk etc] $ bitbake core-image-minimal
resuelve dependencias compila y genera los paquetes de salida(deb rpm ipk) y las imagenes del os discos
$ runqemu qemux86 core-image-minimal
Crear imagen Para BeagleBoard XM
Usar al bash como interprete de comandos:
sudo dpkg-reconfigure dash
y luego pongo no, o
sudo dpkg-reconfigure bash
dependiendo de la distribución de ubuntu/debian Instalo los paquetes necesarios para la compilación:
sudo apt-get install sed wget cvs subversion git-core coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff libtool xterm
para bajar tenemos que bajar una version de poky del yocto project Bajar poky[VERSION].tar.bz2
descomprimir el paquete, y generar el entorno $ tar xvfJ poky-edison-6.0.1.tar.bz2 $ cd poky-edison-6.0.1/ $ source oe-init-build-env
Editar el archivo local.conf, setear cantidad de threads de compilación y el procesador del Target
conf/local.conf
se puede agregar algun recipe solo sin layer como algun programa partiicular, al igualq ue en el local .conf
conf/bblayers.conf Crear Imagen [minimal sato sato-sdk etc] $ bitbake core-image-minimal
resuelve dependencias compila y genera los paquetes de salida(deb rpm ipk) y las imagenes del os discos
$ runqemu qemux86 core-image-minimal