Bien choisir et bien se servir de son EDI

Introduction :

EDI
signifie "environnement de développement intégré" ("Integrated Development Environment" en anglais ce qui donne IDE et qui est aussi utilisé en Français). Il s'agit d'un programme qui regroupe un éditeur de texte, un compilateur (qui sert le plus souvent à traduire un code source écrit dans un langage de programmation comme le C en un autre langage, habituellement un langage d'assemblage  ou un langage machine comme le binaire*), des outils automatiques de fabrication, et souvent un débugger (programme permettant de débugger, c'est-à-dire d'aider le le programmeur à détecter les déficiences de son programme).

* dans le cas du C et du C++, il s'agit d'une transformation en langage machine qu'est le binaire. On peut directement programmer en C et en C++ avec un compilateur comme gcc sous Linux, mais l'EDI est là pour nous faciliter la tache, en nous apportant un environnement de développement plus convivial.


Partie I  : les EDI gratuits les plus courrants

I - sous Windows :
 

 Vous avez, pour cet O.S, plusieurs choix, je vais seulement vous parler des EDI gratuit * les plus utilisés, il s'agit de :


*Je ne parlerai pas des grandes plateformes professionnelles et payantes comme Borland C++ par exemple.


 Dev C++ :

 Cet IDE permet de programmer en C et C++, il est assez simple d'utilisation et existe aussi en version Française. Cet IDE utilise utilise la plateforme MinGW qui une adaptation pour Windows de certains programmes de la suite GNU comme le compilateur GCC (GNU Compiler Collection). Le problème, c'est qu'il a été abandonné et n'est plus à jour depuis un certain temps (on en est toujours à la version 4.9.9.2 depuis plusieurs années), il est donc obsolète. De plus, de nombreux utilisateurs (pas tous) de Windows Vista semblent avoir des problèmes d'incompatibilité. C'est pourquoi, pour ceux qui y sont habitués, il est plutôt recommandé d'utiliser Code::Blocks qui, dans son interface et dans son fonctionnement, est très proche. Dev C++ n'est de plus disponible que sous Windows.

Voici un screen de son interface :

  
Téléchargement
 


Code::Blocks :

Cet IDE est très proche de Dev C++ (permet de programmer en C et C++), cependant il est mis à jour régulièrement et permet de faire directement des projet avec certaines bibliothèques comme GTK. Il est de plus disponible, non seulement sur Windows, mais aussi sur de nombreuses distributions Linux et ainsi que mac OS. Certains ont même réussi à compiler le code source sur FreeBSD. Cet IDE est de plus multi-plateformes, il marche aussi bien sous Windows que sous Linux et peut utiliser différents compilateurs (nous en reparlerons dans la partie II). Une chose qui pourrait être reprochée à Code::Blocks, et de ne pas avoir de version en Français, ce qui n'est pas plus mal ... Pour l'installation, consultez la partie II.

Voici un screen de son interface :




Visual C++ :

Cet IDE appartient à la suite Visual Studio qui a été conçu par microsoft, qui est disponible uniquement sous Windows et qui existe en version payante et gratuite (pour étudiants). Cet IDE est également conçus pour programmer en C et C++, il est aussi connus pour sa facilité d'utilisation, le coté agréable de son interface mais aussi le fait qu'il permet en plus de générer des interfaces avec .Net (sous Windows) en toute simplicité. Enfin, son débugger à la réputation d'être très puissant.

Voici un screen de son interface :



Attention :
Dans le lien ci-dessous, il faut que vous preniez la version Visual C++ Express en français (qui est gratuite).

Téléchargement

Autres solutions:

Vous pouvez également vous servir de gros EDI gratuits, multi-plateformes, multi-langages et également très utilisés comme Eclipse ou NetBeans. Vous pouvez également vous servir MinGW via la ligne de commande.

II - sous Linux :

Il existe également plusieurs IDE C et C++
sous GNU/Linux dont Code::Blocks (qui utilise cette fois directement le compilateur GCC et non l'adaptation de MinGW).

Vous pouvez également, comme sous Windows, vous servir de NetBeans ou d'Eclipse qui sont de gros EDI portables et multi-langages.

On peut aussi mentionner l'existence de Glade qui permet de générer des interfaces en gtk en toute simplicité et aussi d'Anjuta  et Kdevellop qui sont de simples EDI comme code::blocks, mais très peu utilisés.

Enfin, il est également possible de compiler directement en console grâce au compilateur GCC (en savoir plus).

Pour l'installation de ces programmes, utilisez le gestionnaire des paquets de votre distribution, vous trouverez comment utiliser certains gestionnaires (Fedora/RHEL/CentOS, Mandriva, Ubuntu/Debian) dans la liste des commandes.


Partie II : installation et utilisation de Code::Blocks

Dans cette partie, nous allons nous intéresser plus particulièrement à Code::Blocks. Pourquoi ? Parce que c'est l'un des IDE gratuit les plus utilisés et qu'il est multi-plateformes (contrairement à Dev C++ ou Visual C++ par exemple). 

I- Installation :

Sous Windows : 

Vous trouverez, dans le lien de téléchargement ci-dessous, une version avec la plateforme MinGW (avec le compilateur gcc) intégré (codeblocks-8.02mingw-setup.exe) et une autre version (codeblocks-8.02-setup.exe) sans compilateur (je vous conseil de d'abord essayer la version avec MinGW) qui permet de l'adapter avec un compilo déjà présent sur l'OS (qui peut être gcc si vous avez d'autres IDE installés sur votre ordi, où Visual C++).

Téléchargement 

Voici un tutoriel vidéo qui vous guide depuis le début pour l'installation de Code::Blocks sous Windows :


Sous Linux :


Vous devez installer le paquet codeblocks avec votre gestionnaire des paquets, si vous êtes sous Fedora, Mandriva ou Ubuntu, vous pouvez vous aider de la liste des commandes. Il existe également un tutoriel sur le sdz qui vous propose de recompiler C::B, c'est une méthode possible pour l'installer, rendez-vous ici : Installation de Code::Blocks sous Ubuntu
.

II - Utilisation :


Compiler un fichier source et exécuter un programme :

Tout d'abord, faites File/New/Empty file pour créer un nouveau fichier source. Vous devez, ensuite, enregistrer votre fichier source au format .c (si c'est du C) ou .cpp (si c'est du C++). Puis appuyez sur Build/build pour compiler puis sur Build/run pour exécuter votre programme. Vous trouverez l'exécutable dans le répertoire ou ce trouve votre fichier source (définis lors de l'enregistrement).

Créer et compiler un projet :

Cette fois, vous allez apprendre à créer et à compiler un projet et non un simple fichier source avec C::B (File/New/Project). Pour cela je vous laisse visionner la vidéo ci-dessous d'Emmanuel Delahaye (que vous pouvez d'ailleurs télécharger ici au format .avi) expliquant comment se servir de Code::Blocks pour faire un projet modulaire :



Utiliser Code::Blocks pour faire un projet

Bien configurer son compilateur (les warnings) :

Il est important de savoir configurer son IDE et d'y mettre certains Warnings qui analyse le code pour y détecter toutes sortes d'erreurs de bugs qui pourraient ne pas être vu lors d'une simple compilation. Pour cela, allez dans  Settings/Compiler and debugger/Onglet 'Compiler settings'/Onglet 'other option' puis insérez le code minimal suivant (les options doivent être séparées par des espaces) :

-Wall -Wextra -ansi -O -Wwrite-strings -Wstrict-prototypes
-Wuninitialized -Wunreachable-code

Puis faites ok et régénérez en faisant CTRL + F11 ou en fermant C::B.

Pour aller plus loin, vous pouvez consulter le site d'Emmanuel Delahaye dans la partie "bien configurer son compilateur" ou encore en allant consulter les différentes options de GCC présentées dans la doc.

Autres liens pour l'utilisation de C::B :
 
Ayez les bons outils ! (sdz)
Installez et maîtrisez à fond Code::Blocks ! (sdz)
QtWorkbench : compilez vos projets Qt sous Code::Blocks ! (sdz)


III - Code::Blocks ne compile pas


A - Sous Windows :
 
Vous avez un message d'erreur sembable au message ci-dessous :

uses an invalid compiler. Skipping...
Nothing to be done
.


Essayez donc un a un (dans l'ordre), les manipulations suivantes :

Tout d'abord vérifiez que votre IDE est correctement réglé : dans settings/Compiler and debugger, vérifiez que le compilateur sélectionné est bien GNU GCC Compiler, sélectionnez-le si ce n'est pas le cas (vous pouvez tenter un reset default). Il également est possible que C::B ne trouve pas le chemin du compilateur, dans ce cas, allez de nouveau dans Settings/Compiler and debugger ... (une fenêtre s'ouvre, vous êtes normalement dans la partie Global compiler Settings). Puis, allez dans la partie Toolchain executables et cliquez sur Auto-detect.

Si cela ne fonctionne toujours pas, essayer d'installer la version de Code::Blocks avec MinGW (voir partie A) et recommencez les manipulations ci-dessus. Si cela ne fonctionne toujours pas, installez la version de Code::Blocks sans compilateur, installez MinGW à la main ou bien Dev C++ (qui utilise aussi MinGW) et re-essayez les manipulations précédentes. Si ça ne marche toujours pas vous n'avez plus qu'à installer Visual C++, et configurer C::B de tel sorte qu'il utilise le compilateur de Visual : dans settings/Compiler and debugger,  sélectionnez Visual C++.

B - Sous Linux :

Beaucoup de débutants en C ou C++ se plaignent du fait que Code::Blocks ne compile pas leur programme sous Linux (ou parfois n'exécute pas leur programme). En effet, il semble que les packages ont été mal fait sous certaines distributions (et certaines versions de distributions). Vous avez d'ailleurs, souvent ce type de message en appuiant sur build and run :

It seems that this project has not been built yet.
Do you want to build it now?
 

Tout d'abord, il faut vérifier que GCC est bien installé sur votre système, pour cela il suffit de l'appeler en console (gcc en console, s'il est présent, il vous dira qu'il n'y a pas de fichiers à l'entrée).

Si vous êtes sous Ubuntu (ou Debian), pour installer GCC (après avoir vérifié qu'il n'était pas présent) faites  : sudo aptitude install build-essential ou encore sudo apt-get install build-essential. Sinon, utilisez le gestionnaire des paquet de votre distribution et installez le paquet gcc (exemple : yum install gcc et
yum install gcc-c++ en root sous Fedora, RHEL ou CentOS).

Vérifiez également que xterm est bien installé sur votre système (faites xterm en console), sinon installez-le également. xterm est un terminal assez simple qui à l'avantage de fonctionner sur toutes les interfaces graphiques (GNOME, KDE, etc) et qui est utilisé par Code::Blocks ... son absence est très souvent la cause du problème d'exécution. Vous pouvez aussi configurer C::B de tel sorte à ce qu'il utilise plutôt gnome-terminal (le terminal de GNOME) ou encore konsole (le terminal de KDE). Pour cela, allez dans Setting => Environment => Terminal to launch console programs et vous remplissez le champs avec la ligne d'exécution correspondante (par exemple pour gnome-terminal c'est gnome-terminal -t $TITLE -x).


Enfin vérifiez que votre IDE est correctement réglé : dans settings/Compiler and debugger ... vérifiez que le compilateur sélectionné est bien GNU GCC Compiler, sélectionnez-le si ce n'est pas le cas (de la même façon que sous Windows, voir la partie A ci-dessus).

Essayez maintenant de compiler un petit programme et si cela ne fonctionne toujours pas, le mieux sera sans doute d'apprendre à vous servir de gcc et de g++ directement en console (voir ici pour en savoir plus).
 


Article d'InfosLinux   Contrat Creative Commons