Sur le site de OE, ils ça a l’air simple. Dans la pratique ça l’est moins !
Voici ce qui fonctionne le mieux chez moi (le mieux car il y a quand même un bug au niveau de OE).
* installation dans un sous-rep openembedded de mon home
(/home/titeuf/openembedded)
-
cd ~
-
mkdir -p openembedded/build/conf
-
cd openembedded
-
svn co svn://svn.berlios.de/bitbake/branches/bitbake-1.8/ bitbake
-
git clone git://git.openembedded.net/openembedded.git org.openembedded.stable
-
touch build/conf/sanity.conf
* creation de build/conf/local.conf avec dedans (pour mon c3200) :
-
DL_DIR = "/home/titeuf/openembedded/downloads" <==== attention ne pas utiliser ~ ici !
-
BBFILES = "/home/titeuf/openembedded/org.openembedded.stable/packages/*/*.bb"
-
BBMASK = ""
-
TMPDIR = "/home/titeuf/openembedded/${DISTRO}" <===== attention ne pas mettre de / à la fin !
-
MACHINE = "spitz"
-
DISTRO = "angstrom-2008.1"
-
ENABLE_BINARY_LOCALE_GENERATION = "1"
-
GLIBC_GENERATE_LOCALES = "en_US.UTF-8 en_GB.UTF-8 fr_FR.UTF-8"
-
GENERATE_LOCALES = "en_US.UTF-8 en_GB.UTF-8 fr_FR.UTF-8"
-
LINGUAS = "en fr"
-
ALL_LINGUAS = "en fr"
-
PREFERRED_LINGUAS = "fr"
-
IMAGE_FSTYPES = "jffs2 tar.gz"
-
PARALLEL_MAKE = "-j 3"
-
BB_NUMBER_THREADS = "2"
-
INHERIT += " rm_work "
-
PREFERRED_VERSION_linux = 2.6.24
-
PREFERRED_VERSION_linux-rp = 2.6.24
* creer un fichier ./source avec comme contenu :
-
#!/bin/bash
-
export BBPATH=/home/titeuf/openembedded/build:/home/titeuf/openembedded/org.openembedded.stable
-
export PATH=/home/titeuf/openembedded/bitbake/bin:$PATH
* lancer la compilation !
-
source ./source
-
bitbake sharp-flash-header-c700 <==== manque une dep dans les images et est nécessaire pour le c3200
-
bitbake zaurus-updater <==== manque une dep dans les images et est nécessaire pour le c3200
-
bitbake base-image
*** la il va planter. chez moi c’est soit parce qu’il a un pb de filesize sur le kernel => continuer avec bitbake -k base-image, soit parce qu’il ne trouve pas le zImage (c’est le bug de OE). A ce moment là, il indique le rep de travail : angstrom-2008.1/…/kexecboot…/linux-rp/arch/arm/boot dans lequel il faut copier un zImage valide. Perso j’ai mi celui de la derniere angstrom trouvée sur le net avec un kernel 2.6.24 (d’ou l’option dans la conf !) et ça marche nickel.
Ensuite, j’ai pas eu de soucis pour les images suivantes :
-
bitbake console-image
-
bitbake gpe-image
-
bitbake opie-image
Je vais tester opie-kdepim-image qui semble poser quelques soucis.
Le pb avec le kernel est que le nouveau systeme de boot (kexecboot) pose probleme avec les zaurus. Il y plusieurs patchs proposés mais aucun n’a encore été accepté (j’en ai testé un qui marche pourtant…). A terme, ils veulent, si j’ai bien tout compris, s’affranchir de la limite de taille du kernel en la déplaçant ailleurs (ne pas me demander de détails !) ce qui favoriserai également les mises à jour du noyau (pour le moment il faut tout réinstaller visiblement).
Petit détail, grace à l’option « rm_work » qui fait effacer les fichiers temporaires au fur et a mesure, l’ensemble une fois compilé n’occupe que 4.6 Go sur mon disque (ils disent qu’il faut compter au moins 35 Go pour
un bitbake word…)