18
Tutoriel pour Eclipse INF147 – Programmation avancé en C Hiver 2019 Table des matières Table des matières 1. Introduction................................................. 1 2. Installation d’Eclipse (version Windows)....................1 3. Ouverture d’un espace de travail.............................2 4. Créer un projet.............................................. 4 5. Les erreurs de compilation et d’assemblage (link)............7 6. Le débogueur................................................. 8 Step over......................................................9 Step into......................................................9 Résume :......................................................10 7. L’état de la mémoire en mode débogueur......................11 Variables :...................................................11 Expressions :.................................................11 8. La perspective par défaut...................................12 1. Introduction Ce tutoriel sert à configurer un projet Java dans Eclipse. Vous verrez comment créer un projet et des modules en C pour exécuter un programme en mode console. Nous vous présentons dans les pages suivantes comment installer et configurer Éclipse, créer un projet, exécuter et déboguer votre code. Auteur : Pierre Bélisle (SEG) Format tiré d’un document du département de génie Électrique fourni par Bruno De Kelper et écrit par Maxime Page 1 de 18

Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Table des matières

Table des matières1. Introduction..................................................................................................................12. Installation d’Eclipse (version Windows).....................................................................13. Ouverture d’un espace de travail.................................................................................24. Créer un projet.............................................................................................................45. Les erreurs de compilation et d’assemblage (link)......................................................76. Le débogueur..............................................................................................................8

Step over......................................................................................................................9

Step into.......................................................................................................................9

Résume :......................................................................................................................107. L’état de la mémoire en mode débogueur.................................................................11

Variables :....................................................................................................................11Expressions :................................................................................................................11

8. La perspective par défaut..........................................................................................12

1. Introduction Ce tutoriel sert à configurer un projet Java dans Eclipse. Vous verrez comment créer un projet et des modules en C pour exécuter un programme en mode console.

Nous vous présentons dans les pages suivantes comment installer et configurer Éclipse, créer un projet, exécuter et déboguer votre code.

2. Installation d’Eclipse (version Windows)

Ce document ne porte pas sur l’installation d’Eclipse mais sur son utilisation. Vous n’avez rien à faire de particulier si vous êtes dans les laboratoires du SEG sinon cliquer sur le menu démarrer et sélectionner Eclipse.

Auteur : Pierre Bélisle (SEG)Format tiré d’un document du département de génie Électrique fourni par Bruno De Kelper et écrit par Maxime

Page 1 de 13

Hiver 2019INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 2: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Après le démarrage, cliquez sur le x de l’onglet « Welcome » pour voir apparaître la perspective pas défaut (image page suivante).

e).

3. Ouverture d’un espace de travailVous devez choisir ou créer un répertoire de travail appelé Workspace dans Eclipse. Au démarrage vous serez sollicité pour choisir votre répertoire de travail. Vous pouvez en changer n’importe quand par la suite en suivant les options de menu : File//Switch Workspace. Tous vos projets seront créés dans cette espace. À moins de changer évidemment. Si le répertoire n’existe pas, il sera créé.

Auteur : Pierre Bélisle (SEG) Page 2 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 3: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Écrivez votre nom de répertoire d’espace de travail et cliquez sur Launch.

À ce moment, vous retrouverez la perspective pas défault d’Eclipse.

Auteur : Pierre Bélisle (SEGPage 3 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 4: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Vous y retrouvez 5 sections importantes.

Haut : Menus et raccourcisGauche : Un ou plusieurs onglets de navigationDroite : Un ou plusieurs onglets d’outil d’aide à la programmation et aux débogagesCentre : Un ou plusieurs onglets de codeBas : Un ou plusieurs onglets d’information dont la fenêtre d’exécution(console).

La plupart du temps, le navigateur de projet, la fenêtre de code, l’onglet de console au bas et l’onglet « Outline » à droite sont suffisants.

En mode débogage, nous utiliserons les onglets « variables » et « expressions » qui apparaîtront à droite.

4. Créer un projet Vous devez créer un projet ou ouvrir un projet existant. Il y a plusieurs façons mais nous vous présentons celle-ci : File//New//Project et choisir un projet C.

Auteur : Pierre Bélisle (SEG) Page 4 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 5: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Après l’avoir nommé, vous verrez apparaître votre premier projet. Sélectionnez bien MinGw GCC.

Auteur : Pierre Bélisle (SEGPage 5 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 6: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Auteur : Pierre Bélisle (SEG) Page 6 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 7: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Voici ce que vous devez voir dans l’explorateur de projet (la partie gauche).

Créez ensuite un répertoire nommé « src » qui contiendra tous les fichiers .c et .h de votre projet (au même niveau que le répertoire « includes ») 1.

Voici un exemple d’un programme qui affiche des nombres aléatoires entre 1 et 10. Elle utilise un module m_twister.

Pour exécuter le programme, il suffit de cliquer sur la flèche à côté du marteau en haut à gauche.

1 Il est possible de créer un projet multi-répertoires mais nous n’utilisons pas cette option dans ce texte.Auteur : Pierre Bélisle (SEG

Page 7 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 8: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Vous remarquerez qu’en Eclipse, vous devez faire suivre un printf par fflush(stdout) sinon rien n’apparaît dans la fenêtre de console.

D’ailleurs, la console ne reçoit pas le focus après un scanf. Vous devrez cliquer une première fois dans la fenêtre avant de pouvoir entrer des données.

5. Les erreurs de compilation et d’assemblage (link)Lorsqu’il y a une erreur, elle apparaît au bas. Il suffit de cliquer sur l’erreur et Eclipse place le curseur sur une position le plus près possible de la détection d’erreur. Souvent la position qui suit l’erreur. Voici un programme avec une erreur de compilation.

Position dans le code après un double-clic sur l’erreur. Position réelle de l’erreur.

Erreur signalée

Auteur : Pierre Bélisle (SEG) Page 8 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 9: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

6. Le débogueurPour démarrer le débogueur, il ne faut pas d’erreurs de syntaxe. Il suffit de placer ces points d’arrêt et de cliquer sur le « bug » dans le menu du haut. Le programme s’arrête au premier point d’arrêt et attend vos instructions.

Point d’arrêt

Il y a 4 instructions essentielles de base :

Step into : Entre dans un sous-programme et attend vos instructions. Step over : Exécute une instruction ou un sous-programme et attend

l’instruction suivante.

Terminate : Arrête le débogueur. Resume : Va au prochain point d’arrêt. S’exécute normalement s’il

n’y en a aucun.

Auteur : Pierre Bélisle (SEGPage 9 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 10: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

Step over : Exécution l’instruction et attend la prochaine.

Step into : En cliquant sur Step into la fonction mt_randi() est appelée avant printf.

Auteur : Pierre Bélisle (SEG) Page 10 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 11: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

On voit que le débogueur est entré dans la fonction et attend la prochaine instruction.

Résume : En cliquant sur Résume le programme s’exécute jusqu’au prochaine point d’arrêt qui est dans le programme principal dans notre exemple. Ici on voit qu’il y a eu 4 clics sur le bouton.

Auteur : Pierre Bélisle (SEGPage 11 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 12: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

7. L’état de la mémoire en mode débogueurLes deux principaux onglets pour voir l’état de la mémoire sont Variables et Expressions à droite.

Variables : montre l’état des variables actuellement en mémoire dans le sous-programme en cours d’exécution.

Expressions : Permet d’exécuter des fonctions, voir l’état de variables et développer des enregistrements ou des références (pointeurs). Il suffit d’écrire sur une ligne une variable à épier ou une fonction à exécuter.

Auteur : Pierre Bélisle (SEG) Page 12 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse

Page 13: Microsoft Word - ELE674-TutoEclipse-H13-v4.docx › ... › mod_resource › content › 1 › INF…  · Web viewINF147 – Programmation avancé en C . Hiver 2019 . Tutoriel pour

8.  La perspective par défautToutes les fenêtres et les onglets décrits peuvent changer de position selon la version d’Eclipse ou qu’un utilisateur l’a modifié. Il est possible de revenir facilement à la perspective par défaut en suivant les options de menu :

9. ConclusionCe document se veut une introduction minimale pour l‘utilisation de l’environnement Eclipse pour la compilation, l’assemblage, le débogage et l’exécution d’un projet écrit en C avec minGw.

Bon travail en compagnie d’Eclipse!

Auteur : Pierre Bélisle (SEGPage 13 de 13

Hiver 2019 INF147 – Programmation avancé en C

Tutoriel pour Eclipse