Muntar l’entorn de desenvolupament d’OE a Ubuntu

Teòricament anava a escriure això després d’acabar exàmens, però… en fi, així ja ho deixo escrit i puc carregar-me l’ubuntu per instal·lar la jaunty quan vulgui :D

Em vaig basar en les instruccions de la wiki d’openembedded en un principi, però he hagut de canviar certes coses per adaptar-ho al meu ordinador i a l’openmoko.

En el meu cas,  jo he posat tot l’entorn de desenevolupament a /home/usuari/dev/oe/. Així doncs, ens situem en aquest directori. Un altre canvi respecte a les instruccions del wiki és que jo he definit un directori temporal permanent, aixñí sempre és el mateix directori independentment d’on executi el bitbake. A més a més, ho he fet perquè a la mateixa partició no tinc espai suficient, ja que OE requereix molt espai en disc (ara mateix el meu directori TMP pesa 8,4 GB).

1- Baixar-se el bitbake, un programa encarregat de compilar totes les dependències necessàries del paquet que volem:

$ svn co http://svn.berlios.de/svnroot/repos/bitbake/branches/bitbake-1.8 bitbake

2- Baixar-se la llista de receptes per a compilar del repositori GIT d’openembedded

$ git clone http://repo.or.cz/r/openembedded.git

3- Crear  / modificar els arxius de configuració necessaris

3.1 Especificacions per al bitbake (ens situem /home/usuari/dev/oe/):

$ mkdir -p build/conf && cd build/conf

I creem un fitxer local.conf, posant-hi a dins el següent (possiblement voldreu modificar el contingut de la variable TMPDIR):

BBFILES = “/home/barna3/dev/oe/openembedded/recipes/*/*.bb”
DISTRO = “openmoko”
MACHINE = “om-gta02″
TMPDIR = /media/sdb2/tmp #atenció, no acabeu aquesta linea amb un “/”!
ASSUME_PROVIDED += “qemu-native”
#GLIBC_GENERATE_LOCALES = “en_US.UTF-8″
ENABLE_BINARY_LOCALE_GENERATION = “0″

3.2 Afegim un parell de variables d’entorn per a què les utilitzi el bitbake (dins de /home/usuari/.bashrc):

#bitbake variables
export BBPATH=/home/barna3/dev/oe/build:/home/barna3/dev/oe/openembedded
export PATH=/home/barna3/dev/oe/bitbake/bin:$PATH

Doncs això ja està :D Per a compilar, per exemple, l’abiword:

$ bitbake abiword

I llestos. Per veure el que es pot compilar mireu les receptes dins del directori de receptes( /home/usuari/oe/openembedded/recipes/). Sinó trobeu el programa que voleu compilar, és qüestió d’escriure’n una i afegir-la (i de pas enviar-la on calgui perquè la comunitat se’n beneficii :P )

NOTA1: El primer cop que compileu alguna cosa, igual us tarda tranquil·lament més d’un dia, ja que ha de compilar moltes parts del sistema.

NOTA2: El repositori git amb les receptes és molt actiu, o sigui que es bo actualitzar-lo (git pull) cada poc temps, sobretot si tenim problemesen compilar.

PD: per si no queda clara l’estructura de fitxers (a mi em va passar)….

oe-tree

One Response to “Muntar l’entorn de desenvolupament d’OE a Ubuntu”

  1. Seguint al peu de la lletra les teves instruccions al executar
    bitbake Abiword
    Em dona el seguent error:
    ERROR: Openembedded’s config sanity checker detected a potential misconfiguration.
    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
    Following is the list of potential problems / advisories:

    Please set TARGET_ARCH directly, or choose a MACHINE or DISTRO that does so.
    Please set TARGET_OS directly, or choose a MACHINE or DISTRO that does so.
    Please set a valid MACHINE in your local.conf
    DISTRO ‘“openmoko”’ not found. Please set a valid DISTRO in your local.conf

Discussion Area - Leave a Comment