Difference between revisions of "Trash Fr:Compilateur croisé"
Line 1: | Line 1: | ||
− | Comment installer le kit de développement du | + | Comment installer le kit de développement du projet Armadeus pour Linux/Window$ |
− | ==Prérequis pour une installation | + | ==Prérequis pour une installation Window$== |
Pour développer des programme pour la carte Armadeus, il vous faudra installer Cygwin dans un premier temps: http://www.cygwin.com. | Pour développer des programme pour la carte Armadeus, il vous faudra installer Cygwin dans un premier temps: http://www.cygwin.com. | ||
Choisissez une installation par défaut et ajoutez les paquets suivants en cliquant une fois sur l'icône "skip": | Choisissez une installation par défaut et ajoutez les paquets suivants en cliquant une fois sur l'icône "skip": | ||
Line 18: | Line 18: | ||
* web -> wget | * web -> wget | ||
− | == | + | ==Prérequis pour une installation Linux== |
− | Vérifiez que vous avez les paquets suivants installés: | + | Vérifiez que vous avez les paquets suivants installés dans votre distribution: |
* cvs (fixme) | * cvs (fixme) | ||
* gettext | * gettext | ||
Line 25: | Line 25: | ||
* svn | * svn | ||
* wget | * wget | ||
+ | * autoconf | ||
+ | * zlib1g-dev | ||
− | + | Sous Debian, vous pouvez utiliser la commande suivante: | |
$ apt-get install wget gettext libncurses5-dev subversion autoconf zlib1g-dev | $ apt-get install wget gettext libncurses5-dev subversion autoconf zlib1g-dev | ||
− | Il a été rapporté que l'installation se déroule bien sur: Fedora Core 3, Fedora Core 4, Debian Sarge, | + | Il a été rapporté que l'installation se déroule bien sur: Fedora Core 3, Fedora Core 4, Debian Sarge, Ubuntu Edgy |
==Installation== | ==Installation== | ||
Line 35: | Line 37: | ||
Ouvrez un shell et suivez la procédure suivante: | Ouvrez un shell et suivez la procédure suivante: | ||
− | === | + | ===Récupération de l'archive Armadeus=== |
− | Si vous êtes un développeur | + | * Si vous êtes un développeur officiel, récupérez les fichiers requis depuis le dépôt: |
$ svn co svn://ericjarrige.homelinux.org/armadeus/trunk armadeus --username <<YOUR USERNAME>> --password <<YOUR PASS>> | $ svn co svn://ericjarrige.homelinux.org/armadeus/trunk armadeus --username <<YOUR USERNAME>> --password <<YOUR PASS>> | ||
Un répertoire appelé armadeus/ sera créé sur votre disque dur et contiendra tous les fichiers dont vous aurez besoin. | Un répertoire appelé armadeus/ sera créé sur votre disque dur et contiendra tous les fichiers dont vous aurez besoin. | ||
− | Sinon, téléchargez | + | * Sinon, téléchargez l'archive d'installation depuis SourceForge: http://sourceforge.net/projects/armadeus et décompressez la dans un répertoire avec au moins 2 Go d'espace libre. |
− | ===Configurez le | + | ===Configurez le générateur de distribution Armadeus :=== |
$ cd armadeus/ | $ cd armadeus/ | ||
$ make menuconfig (ou juste make la première fois). | $ make menuconfig (ou juste make la première fois). | ||
− | Ceci lancera la configuration du | + | Ceci lancera la configuration du Buildroot. |
Dans le menu Board Support Option, sélectionnez votre carte armadeus (apf/apm9328), la taille de la RAM (16/32MB) et ainsi de suite... | Dans le menu Board Support Option, sélectionnez votre carte armadeus (apf/apm9328), la taille de la RAM (16/32MB) et ainsi de suite... | ||
− | * Choisissez GDB version 6.3 si | + | * Choisissez GDB version 6.3 si vous avez besoin d'un débogueur. |
− | * Si vous avez besoin | + | * Si vous avez besoin de la LIBSTD C++, ajoutez ceci dans le menuconfig/options du toolchain/options additionelles de gcc : |
--disable-libstdcxx-pch. Ceci désactivera l'utilisation des en-êtes du précompilateur. | --disable-libstdcxx-pch. Ceci désactivera l'utilisation des en-êtes du précompilateur. | ||
− | * | + | *Quittez l'outil de configuration en enregistrant votre config. |
===Lancez le build=== | ===Lancez le build=== | ||
$ make | $ make | ||
− | + | La chaine de compile, le noyau linux et le système de fichier sont construits automatiquement. Durant cette procédure, plusieurs fichiers seront téléchargés depuis Internet. S'il vous plait, attendez un peu... cela prend au moins une heure la première fois! | |
===Problèmes:=== | ===Problèmes:=== | ||
Line 61: | Line 63: | ||
===Appréciez le résultat=== | ===Appréciez le résultat=== | ||
− | Les | + | Les fichiers binaires générés se trouvent dans le sous-répertoire armadeus/buildroot: |
− | * '''u-boot.brec''' (peut être utilisé | + | * '''u-boot.brec''' (peut être utilisé en mode bootstrap si U-Boot n'est pas installé ou ne marche plus. Dans ce cas regardez la page du [[BootLoader]] ) |
− | * '''u-boot.bin''' ( | + | * '''u-boot.bin''' (à télécharger depuis U-Boot, regardez la page [[BootLoader]] "Update u-boot") |
− | * '''linux-kernel-2.6.12-arm.bin''' ( | + | * '''linux-kernel-2.6.12-arm.bin''' (à télécharger depuis U-Boot, regardez InstallLinux) |
− | * '''rootfs.arm_nfpu.jffs2''' ( | + | * '''rootfs.arm_nfpu.jffs2''' (à télécharger depuis U-Boot, regardez InstallFileSystem?) |
− | * '''rootfs.arm_nfpu.tar''' (pour un | + | * '''rootfs.arm_nfpu.tar''' (pour un rootfs par NFS ou sur MMC/SD, regardez RootNFS) |
− | ==Pour garder votre copie | + | ==Pour garder votre copie de travail à jour par rapport au dépôt Armadeus== |
$ svn update | $ svn update | ||
Ceci mettra à jour votre répertoire de travail à la dernière release. | Ceci mettra à jour votre répertoire de travail à la dernière release. | ||
− | Note: si "svn update" échoue à cause d'un répertoire ou | + | Note: si "svn update" échoue à cause d'un répertoire ou fichier qui existe déjà, faites ceci: |
− | $ rm -rf < | + | $ rm -rf <le_répertoire/ou_le_fichier> |
$ svn update | $ svn update | ||
Vous pouvez faire un: | Vous pouvez faire un: | ||
$ make defconfig | $ make defconfig | ||
− | pour avoir | + | pour avoir récupérer les paramètres par défaut puis un: |
$ make menuconfig | $ make menuconfig | ||
− | pour | + | pour apporter vos modifications personnelles |
− | Vous devez faire un '''make''' pour reconstruire les fichiers binaires et ensuite chargez les fichiers binaires | + | Vous devez faire un '''make''' pour reconstruire les fichiers binaires et ensuite chargez les fichiers binaires sur votre cible/carte. |
Note: Si finalement rien ne marche alors que ça marchait avant la dernière mise à jour, | Note: Si finalement rien ne marche alors que ça marchait avant la dernière mise à jour, | ||
− | + | vous pouvez appliquer la procédure suivante: | |
− | $ rm -rf | + | $ rm -rf buildroot |
$ rm Makefile | $ rm Makefile | ||
+ | $ svn update | ||
$ make | $ make | ||
$ make | $ make | ||
Enjoy! | Enjoy! |
Revision as of 18:30, 28 July 2007
Comment installer le kit de développement du projet Armadeus pour Linux/Window$
Contents
Prérequis pour une installation Window$
Pour développer des programme pour la carte Armadeus, il vous faudra installer Cygwin dans un premier temps: http://www.cygwin.com. Choisissez une installation par défaut et ajoutez les paquets suivants en cliquant une fois sur l'icône "skip":
- devel -> subversion
- devel -> make
- devel -> patchutils
- devel -> gcc-core
- devel -> gcc-g++
- devel -> gdb
- devel -> binutils
- devel -> libncurses-devel
- devel -> gettext-devel
- devel -> bison
- devel -> flex
- system -> util-linux
- web -> wget
Prérequis pour une installation Linux
Vérifiez que vous avez les paquets suivants installés dans votre distribution:
- cvs (fixme)
- gettext
- libncurses
- svn
- wget
- autoconf
- zlib1g-dev
Sous Debian, vous pouvez utiliser la commande suivante:
$ apt-get install wget gettext libncurses5-dev subversion autoconf zlib1g-dev
Il a été rapporté que l'installation se déroule bien sur: Fedora Core 3, Fedora Core 4, Debian Sarge, Ubuntu Edgy
Installation
Ouvrez un shell et suivez la procédure suivante:
Récupération de l'archive Armadeus
- Si vous êtes un développeur officiel, récupérez les fichiers requis depuis le dépôt:
$ svn co svn://ericjarrige.homelinux.org/armadeus/trunk armadeus --username <<YOUR USERNAME>> --password <<YOUR PASS>>
Un répertoire appelé armadeus/ sera créé sur votre disque dur et contiendra tous les fichiers dont vous aurez besoin.
- Sinon, téléchargez l'archive d'installation depuis SourceForge: http://sourceforge.net/projects/armadeus et décompressez la dans un répertoire avec au moins 2 Go d'espace libre.
Configurez le générateur de distribution Armadeus :
$ cd armadeus/ $ make menuconfig (ou juste make la première fois).
Ceci lancera la configuration du Buildroot. Dans le menu Board Support Option, sélectionnez votre carte armadeus (apf/apm9328), la taille de la RAM (16/32MB) et ainsi de suite...
- Choisissez GDB version 6.3 si vous avez besoin d'un débogueur.
- Si vous avez besoin de la LIBSTD C++, ajoutez ceci dans le menuconfig/options du toolchain/options additionelles de gcc :
--disable-libstdcxx-pch. Ceci désactivera l'utilisation des en-êtes du précompilateur.
- Quittez l'outil de configuration en enregistrant votre config.
Lancez le build
$ make
La chaine de compile, le noyau linux et le système de fichier sont construits automatiquement. Durant cette procédure, plusieurs fichiers seront téléchargés depuis Internet. S'il vous plait, attendez un peu... cela prend au moins une heure la première fois!
Problèmes:
- crash de la compilation avec uclibc-0.9.28: lancez make à nouveau
- crash de la compilation avec gdb 6.3: lancez make à nouveau
- crash de la compilation avec linux 2.6.12: lancez make à nouveau
Appréciez le résultat
Les fichiers binaires générés se trouvent dans le sous-répertoire armadeus/buildroot:
- u-boot.brec (peut être utilisé en mode bootstrap si U-Boot n'est pas installé ou ne marche plus. Dans ce cas regardez la page du BootLoader )
- u-boot.bin (à télécharger depuis U-Boot, regardez la page BootLoader "Update u-boot")
- linux-kernel-2.6.12-arm.bin (à télécharger depuis U-Boot, regardez InstallLinux)
- rootfs.arm_nfpu.jffs2 (à télécharger depuis U-Boot, regardez InstallFileSystem?)
- rootfs.arm_nfpu.tar (pour un rootfs par NFS ou sur MMC/SD, regardez RootNFS)
Pour garder votre copie de travail à jour par rapport au dépôt Armadeus
$ svn update
Ceci mettra à jour votre répertoire de travail à la dernière release.
Note: si "svn update" échoue à cause d'un répertoire ou fichier qui existe déjà, faites ceci:
$ rm -rf <le_répertoire/ou_le_fichier> $ svn update
Vous pouvez faire un:
$ make defconfig
pour avoir récupérer les paramètres par défaut puis un:
$ make menuconfig
pour apporter vos modifications personnelles
Vous devez faire un make pour reconstruire les fichiers binaires et ensuite chargez les fichiers binaires sur votre cible/carte.
Note: Si finalement rien ne marche alors que ça marchait avant la dernière mise à jour, vous pouvez appliquer la procédure suivante:
$ rm -rf buildroot $ rm Makefile $ svn update $ make $ make
Enjoy!