Outils pour utilisateurs

Outils du site


wiki:linux_pour_zynq_de_xilinx:installation_buildroot

Ceci est une ancienne révision du document !


Installation et utilisation de Buildroot pour carte microzed

Buildroot est un outil permettant la création d'un système d'exploitation Linux complet adapté pour l'embarqué, incluant le “boot-loader”, le noyau, le “devicetree” et le système de fichiers “rootfs”.
Pour cette page, nous allons nous inspirer du tutoriel proposé par Xilinx.

Pré-installations

Nécessaires

Outils de récupération de sources :

  • wget
  • git

ATTENTION : pour ces deux outils, il ne faut pas oublier de configurer les paramètres de proxy, si nécessaire.

Outils de compilation :

  • sed
  • make (version 3.81 ou ultérieure)
  • binutils
  • build-essential (pour les distributions à base de Debian)
  • gcc (version 2.95 ou ultérieure)
  • g++ (version 2.95 ou ultérieure)
  • bash
  • patch
  • gzip
  • bzip2
  • perl (version 5.8.7 ou ultérieure)
  • tar
  • cpio
  • python (version 2.6 ou 2.7)
  • unzip
  • rsync
  • DTC
    $ git clone https://git.kernel.org/pub/scm/utils/dtc/dtc.git
    $ cd dtc/
    $ make
    $ export PATH=<path-containing-dtc>/dtc:$PATH 


    Ou, vous pouvez ajouter ce chemin vers le binaire dtc dans le fichier ~/.profile afin de le retrouver au prochain démarrage de votre session (pas besoin de la commande export).

  • libncurses5 et libncurses5-dev pour utiliser l'outil de configuration menuconfig.

Installation

  • Installation dans votre système : télécharger l'archive de buildroot décompresser l'archive dans le répertoire de travail. Ici, nous utiliserons la version 2016.05. Par exemple, on peut faire ainsi dans un terminal :
    $ cd Xilinx
    $ wget https://buildroot.org/downloads/buildroot-2016.05.tar.gz
    $ tar xzvf buildroot-2016.05.tar.gz
  • Installation dans une machine virtuelle pré-configurée avec Vagrant : voir ce sujet

Utilisation

$ cd buildroot-2016-05 
  1. Appliquer la configuration par défaut pour les cartes microzed qui dans le fichier zynq_microzed_defconfig dans le répertoire configs. Éventuellement, si comme moi, les clonages avec git ne fonctionnent pas avec une adresse en git:, changer la ligne ou le dépôt git est indiqué
    BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/Xilinx/linux-xlnx.git"

    en :

    BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/Xilinx/linux-xlnx.git"

    Puis continuez ainsi :

    $ make zynq_microzed_defconfig
    ...
    #
    # configuration written to /.../Xilinx/buildroot-2016.05/.config
    #
  2. À partir de là, il est possible de changer les configurations par défaut avec menuconfig. Pur l'instant, nous ne changerons pas ces configurations, et nous allons juste les appliquer telles quelles :
    $ make menuconfig 

    Il faut choisir Exit pour rester avec la configuration par défaut.

    $ make  busybox-menuconfig 

    Il faut choisir Exit pour rester avec la configuration par défaut, et accepter de sauvegarder la configuration.

    $ make linux-menuconfig 

    Il faut choisir Exit pour rester avec la configuration par défaut.

  3. Maintenant, chargez et construisez les outils qui ont été configurés à l'étape précédente :
    $ make
    ...
    ...
    table='/.../Xilinx/buildroot-2016.05/output/build/_device_table.txt'
    /usr/bin/install -m 0644 support/misc/target-dir-warning.txt /.../Xilinx/buildroot-2016.05/output/target/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM

    Cela prend du temps. S'il y a des erreurs vérifiez que les paquets mentionnés plus haut sont installés sur votre machine, que le chemin de la variable $PATH inclus l'accès au binaire du programme dtc et que les configurations proxy sont correctes en particulier pour wget et git.

Toutes les éléments générés se trouvent dans le répertoire output. Pour modifier cela, ce qui peut être utile pour générer des images avec plusieurs configurations possibles, on peut utiliser l'option O=. Par exemple :

$ make O=../output_microzed_default/ zynq_microzed_defconfig

Cela créera l'arborescence des différentes sorties de compilation ainsi que le fichier de configuration .config dans le répertoire output_microzed_default qui se trouvera au niveau inférieur du répertoire général de buildroot.

Installation sur la carte SD

REMARQUE : à partir de ce point nous allons travailler avec la version de buildroot installée dans une machine virtuelle pré-configurée avec Vagrant, comme indiqué dans ce sujet. Il peut y avoir alors quelques différences avec une version installée sur votre système.

wiki/linux_pour_zynq_de_xilinx/installation_buildroot.1475223263.txt.gz · Dernière modification : 2016/09/30 10:14 de emeyer