Desarrollo de una aplicación usando Bitbake

Desarrollo de una aplicación usando Bitbake    Objetivos    Compilar una aplicación sencilla sin hacer uso de Bitbake  Utilizar el entorno Bitbake para compilar una aplicación sencilla.  Requisitos      Tener instalado el entorno de desarrollo proporcionado por MultiTech.  Disponer de una compilación core‐base‐image.    Compilando una aplicación sin utilizar bitbake  En la primera parte de esta práctica vamos a construir una aplicación sencilla que nos  ayude  a  obtener  una  visión  general  sobre  los  pasos  necesarios  en  el  proceso  de  compilación de una aplicación o utilidad.  En  primer  lugar,  tendremos  que  preparar  el  entorno  y  localizar  las  herramientas  disponibles.    1. Configurar las variables de entorno:  $ cd /home/matrix/workspace/corecdp-1.1.1 $ source env-oe.sh 2. Añadir a la variable PATH la ruta adecuada para incluir el toolchain:  $ export PATH=${OETREE}/build/tmp/cross/armv5te/bin:$PATH Para  mantener  una  estructura  ordenada  crearemos  un  directorio  de  trabajo  donde  podremos comenzar a elaborar nuestra utilidad.  3. Crear un directorio para almacenar el código fuente y los archivos temporales:  $ mkdir ejercicio1 $ cd ejercicio1 4. Crear el fichero hello.c con el siguiente contenido:  #include #include int main (void){ printf ("Hello from Matrix\n"); return 0; } Una vez configurado el entorno y preparada nuestra utilidad, podemos proceder a su  compilación y testeo sobre el módulo.  5. Compilar y linkar el fichero:  $

0 downloads 22 Views 100KB Size

Recommend Stories


Desarrollo eficiente de aplicaciones empresariales Usando el framework hibernate
Desarrollo eficiente de aplicaciones empresariales Usando el framework hibernate Efficient enterprise application development using the Framework Hibe

UNA VISION DE DESARROLLO SOSTENIBLE
UNA VISION DE DESARROLLO SOSTENIBLE Entre el miedo y la esperanza: El paisaje puede ser una manera o otra de reflejo en el cual se materializan las re

Secuencia de posturas usando Sillas
Sadhana Dharma – Estudios Profesionales en Yoga Secuencia de posturas usando Sillas Posición 8. Objetivo: Flexibilizar la zona lumbar estimulando la

Story Transcript

Desarrollo de una aplicación usando Bitbake    Objetivos   

Compilar una aplicación sencilla sin hacer uso de Bitbake  Utilizar el entorno Bitbake para compilar una aplicación sencilla. 

Requisitos     

Tener instalado el entorno de desarrollo proporcionado por MultiTech.  Disponer de una compilación core‐base‐image.   

Compilando una aplicación sin utilizar bitbake  En la primera parte de esta práctica vamos a construir una aplicación sencilla que nos  ayude  a  obtener  una  visión  general  sobre  los  pasos  necesarios  en  el  proceso  de  compilación de una aplicación o utilidad.  En  primer  lugar,  tendremos  que  preparar  el  entorno  y  localizar  las  herramientas  disponibles.    1. Configurar las variables de entorno:  $ cd /home/matrix/workspace/corecdp-1.1.1 $ source env-oe.sh

2. Añadir a la variable PATH la ruta adecuada para incluir el toolchain:  $ export PATH=${OETREE}/build/tmp/cross/armv5te/bin:$PATH

Para  mantener  una  estructura  ordenada  crearemos  un  directorio  de  trabajo  donde  podremos comenzar a elaborar nuestra utilidad.  3. Crear un directorio para almacenar el código fuente y los archivos temporales:  $ mkdir ejercicio1 $ cd ejercicio1

4. Crear el fichero hello.c con el siguiente contenido:  #include #include int main (void){ printf ("Hello from Matrix\n"); return 0; }

Una vez configurado el entorno y preparada nuestra utilidad, podemos proceder a su  compilación y testeo sobre el módulo.  5. Compilar y linkar el fichero:  $ arm-corecdp-linux-gnueabi-gcc –o hello hello.c

6. Copiar  el  fichero  sobre  el  módulo  (por  defecto  el  módulo  estará  configurado  con la IP 192.168.2.1 con el usuario root y password root):  $ scp hello [email protected]:/tmp/

7. Acceder al módulo y ejecutar la aplicación:  $ ssh [email protected] $ /tmp/hello

   

 

Compilando una aplicación usando el entorno Bitbake  La  herramienta  Bitbake  nos  va  a  permitir  construir  nuestro  sistema  a  partir  de  aplicaciones o paquetes elementales denominados recipes. Cada uno de estos recipes  puede  contener  uno  o  varios  archivos  que  implementan  una  utilidad  más  o  menos  compleja.  El  objetivo  en  esta  segunda  parte  de  la  práctica  será  la  creación  de  un  recipe  que  incluya la funcionalidad hello.c para que mediante el entorno Bitbake se pueda añadir  de una forma automática a nuestro sistema final.  8. Crear la carpeta base del recipe:  $ cd ${OETREE}/user‐collection/recipes  $ mkdir hello  $ cd hello    9. Volver a crear, o copiar, el fichero hello.c descrito anteriormente.  10. Crear el fichero hello_1.0.0.bb :    DESCRIPTION = "Hello" SECTION = "examples" LICENSE = "GPL" SRC_URI = "file://hello.c" S = "${WORKDIR}" do_compile() { ${CC} ${CFLAGS} ${LDFLAGS} hello.c -o hello } do_install() { install -d ${D}${bindir} install -m 0755 hello ${D}${bindir} }

Este fichero permitirá a Bitbake localizar los archivos fuentes que conforman nuestro  programa,  crear  el/los  binarios  correspondientes  y  generar  el  fichero  final  que  nos  permitirá instalar la aplicación en el dispositivo. Podemos comentar el significado de  alguno de los parámetros utilizados:  SRC_URI especifica el/los ficheros que componen nuestra aplicación. En este ejemplo  residen  físicamente  en  el  disco  duro  de  nuestro  PC  de  desarrollo,  sin  embargo  en  conjunto  con  el  parámetro  S  puede  configurarse  una  ruta  remota  a  un  servidor  externo. Para nuestro ejemplo S toma el valor ${WORKDIR} que está asociado al path 

${OETREE}/build/tmp/work/armv5te‐corecdp‐linux‐gnueabi/.  El  parámetro  do_compile  define  las  instrucciones  necesarias  para  realizar  la  compilación  de  la  utilidad.  Si  no  se  define  ningún  valor  para  este  parámetro,  se  ejecutara el comando make.  En  la  misma  línea,  do_install  define  los  pasos  que  son  necesarios  para  instalar  correctamente nuestra utilidad. D define el directorio destino y bindir  es el directorio  donde comúnmente se depositan los ejecutables /usr/bin/.  Para  una  visión  más  detallada,  se  recomienda  la  lectura  del  siguiente  link:  http://docs.openembedded.org/usermanual/usermanual.html#chapter_recipes  11. Ejecutar Bitbake:  $ cd ${OETREE} $ bitbake hello

  12. Copiar el paquete sobre el módulo    $ scp build/tmp/deploy/glibc/ipk/armv5te/hello_1.0.0-r0.5_armv5te.ipk [email protected]:/var/tmp

    13. Instalar el paquete:  $ ssh [email protected] $ cd /var/tmp $ opkg install hello_1.0.0-r0.5_armv5te.ipk

14. Ejecutar la aplicación  $ hello

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.