• 20 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 23/12/2019

Mettez en place votre environnement sous GNU/Linux

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Avant de se lancer dans le vif du sujet, nous allons mettre en place notre environnement de développement qui nous permettra ensuite de cross-compiler des applications et de générer un système d’exploitation pour Raspberry PI.

Configuration minimale

Tout d’abord, je vous propose de vérifier que votre ordinateur vous permet de suivre ce cours.

Vous devez posséder au minimum :

  • 2 Go de mémoire RAM, même si au moins 8 Go sont conseillés ;

  • plus de 20 Go d'espace disque pour tout installer ;

  • un processeur 64 bits.

Pour ce cours, nous allons utiliser une machine sous Debian version 9. Si vous n’avez pas déjà installé cette version sur votre ordinateur, vous pouvez télécharger la dernière version sur le site de Debian. Vous avez le choix de l’installer directement sur votre ordinateur ou en tant que machine virtuelle via un logiciel de virtualisation, tel que VirtualBox

Préparez votre système

Commençons tout d'abord par nous assurer que le système est à jour. Pour cela, lancez un nouveau terminal en cliquant en haut à gauche sur le bouton Activités puis, dans la barre de recherche, entrez Terminal et cliquez sur l'icône correspondante.  

Afin de mettre à jour votre distribution Debian, ou de vous assurer que votre système est à jour, vous devez entrer les 3 commandes suivantes dans votre terminal. La première commande vous permettra de prendre les droits administrateur, la deuxième commande met à jour la base d'applications disponibles, et la troisième effectue la mise à jour du système.

su -
apt-get update
apt-get upgrade

Voici un exemple de ce que vous devez obtenir après avoir effectué ce processus de mise à jour :

Procédure de mise à jour de Debian 9
Mise à jour de Debian 9

Lors de ce cours, vous aurez besoin d'installer de nouvelles applications ou de lancer des commandes en tant qu'administrateur. Afin d'éviter de travailler avec les droits administrateurs alors qu'ils ne sont pas nécessaires, nous allons installer la commande sudo qui vous permettra de lancer des commandes en tant qu'administrateur. Nous donnons ensuite au compte utilisateur (dans mon cas, user) le droit d'exécuter cette commande. Pour ce faire, nous ajoutons l'utilisateur au groupe sudo. Finalement, nous reprenons les droits de notre compte utilisateur.

apt-get install sudo
gpasswd -a user sudo
su - user

Vérifiez maintenant que votre utilisateur a le droit de lancer des commandes en tant qu'administrateur via la commande sudo, par exemple la commande ls.

sudo ls

Installez votre environnement de compilation et de cross-compilation

L'objectif de ce cours étant d'apprendre à compiler des applications pour un système embarqué, vous allez tout d'abord installer une chaîne de compilation classique, puis une chaîne de cross-compilation (i.e. compilation croisée).

Commencez par installer le paquet build-essential afin d'obtenir l'ensemble des applications/commandes classiquement utilisées dans un environnement de développement, dont le compilateur gcc

sudo apt-get install build-essential

Vérifiez ensuite que la commande gcc est disponible.

gcc -v

 Vous devez obtenir la sortie suivante, la dernière ligne indique la version de gcc installée. Dans mon cas, la version de gcc est 6.3.0.

Vérification de l'installation du paquet build-essential
Sortie de la commande gcc -v

Vous allez maintenant installer la chaîne de compilation croisée pour Raspberry PI. Cette chaîne est disponible sur ce dépôt GitHub. Commencez par installer l'outil Git qui vous permettra de réaliser une copie de ces outils.

sudo apt-get install git

Créez un dossier Development-tools dans votre répertoire personnel. 

mkdir ~/Development-tools

Rendez-vous ensuite dans votre répertoire de développement, et réalisez une copie des outils officiels de développement pour Raspberry PI. Le répertoire créé contient notamment les chaînes de compilation croisée compatibles avec les différentes versions de carte Raspberry PI

cd ~/Development-tools
git clone https://github.com/raspberrypi/tools

Testez votre environnement

Lorsque le téléchargement du répertoire tools est terminé, vous avez une copie locale de la chaîne de compilation croisée officielle. Le répertoire tools/arm-bcm2708/arm-linux-gnueabihf/bin/ contient la suite gcc qui vous permet de compiler des programmes pour Raspberry Pi (processeur ARM Broadcom BCM2xxx) depuis un ordinateur classique (processeur x86-64) sous Linux. 

ls ./tools/arm-bcm2708/arm-linux-gnueabihf/bin/

Afin de vérifier que la chaîne de compilation croisée est correctement installée, exécutez cette commande :

./tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc -v

La version de gcc installée est la 4.9.3.

GCC arm fourni pour Raspberry PI
GCC arm fourni pour Raspberry PI

Cette chaîne compilation croisée n'est pas installée dans les répertoires standard du système contenant les exécutables.  Afin d'éviter de devoir saisir le chemin absolu vers les exécutables arm-linux-gnueabihf-*, vous allez ajouter le répertoire bin qui les contient à la variable d'environnement PATH. Ainsi, lorsque vous entrerez une commande, ce répertoire sera pris en compte.

echo PATH=\$PATH:~/Development-tools/tools/arm-bcm2708/arm-linux-gnueabihf/bin >> ~/.bashrc
source ~/.bashrc
arm-linux-gnueabihf-gcc -v

 Maintenant, vous pouvez compiler des programmes pour Raspberry PI directement depuis votre ordinateur en préfixant les commandes de compilation par arm-linux-gnueabihf-.

Exemple de certificat de réussite
Exemple de certificat de réussite