Trash Fr:Compilateur croisé

From ArmadeusWiki
Revision as of 05:49, 27 July 2007 by NicolasC (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Comment installer le kit de développement du programme Armadeus pour Linux/Window$

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:

  • cvs (fixme)
  • gettext
  • libncurses
  • svn
  • wget

Pour Débian, 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, ...

Installation

Ouvrez un shell et suivez la procédure suivante:

Obtenez le programme Armadeus

Si vous êtes un développeur inscrit,vérifiez 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 ensuite l'archive d'installation depuis SourceForge: http://sourceforge.net/projects/armadeus et décompressez le.

Configurez le programme 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 vosu avez besoin d'un débogueur.
  • Si vous avez besoin du 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.

  • Quittes l'outil de configuration en enregistrant votre config.

Lancez le build

$ make

Le toolchain est construit automatiquement. Durant cette procédure, plusieurs fichiers sont téléchargés depuis le web. 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 ficheirs binaires généras peuvent être trouvé dans le sous-répertoire armadeus/software/buildroot:

  • u-boot.brec (peut être utilisé avec bootstrap, si U-Boot n'est pas installé ou ne marche pas, regardez la page du BootLoader )
  • u-boot.bin (pour télécharger avec uboot, regardez la page BootLoader "Update u-boot")
  • linux-kernel-2.6.12-arm.bin (pour télécharger avec uboot, regardez InstallLinux)
  • rootfs.arm_nfpu.jffs2 (pour télécharger avec uboot, regardez InstallFileSystem?)
  • rootfs.arm_nfpu.tar (pour un nfsroot, regardez RootNFS?)

Pour garder votre copie mise à jour au sein de l'arborescende 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 fichire qui existe déjà, faites ceci:

$ rm -rf <this-directory/file>
$ svn update

Vous pouvez faire un:

$ make defconfig

pour avoir automatiquement les dernieres particularités activées et un:

$ make menuconfig

pour régler à nouveau vos paramètres personnels (SDRAM size...).

Vous devez faire un make pour reconstruire les fichiers binaires et ensuite chargez les fichiers binaires à votre cible.

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 software/buildroot
$ rm Makefile
$ make
$ make

Enjoy!