Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Programmation > Environnements de développement > Installez et maîtrisez à fond Code::Blocks ! > Les bases > Configurez vos projets > Lecture du tutoriel

Configurez vos projets

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteurs : Nesquik69 et Xaviou
Note : 20 / 20 (3 votes)
Visualisations : 4 378

Plus d'informations Plus d'informations
La plupart d'entre vous écrivez votre code, compilez et puis basta... mais est-ce qu'il vous arrive d'aller dans le panneau d'options de votre projet? C'est pourtant lui qui vous permet de paramètrer vos projets...

Dans ce chapitre, nous allons donc voir quel est ce panneau et à quoi il sert. Pour cela, créez au préalable un nouveau projet avec les options par défaut (je vous expliquerai plus tard à quoi elles servent ;) ) car nous allons travailler dessus.

Au fait, si l'icône de ce chapitre vous étonne c'est normal, mais vous comprendrez bien vite ^^ .
Sommaire du chapitre :
Icône du chapitre
Chapitre précédent Sommaire Chapitre suivant

Qu'est-ce que ce panneau ?

Ce panneau, vous devez sûrement le connaître, cliquez sur "Project -> Properties" et le voilà :

Image utilisateur
Le panneau des options pour un projet
Il est important de préciser qu'il a été entièrement revu dans les nightly builds ce qui risque de déstabiliser les anciens utilisateurs de Code::Blocks RC2, c'est pourquoi je vous conseille de lire ce chapitre même si vous aviez des facilités avec la RC2 ;) .

Voiçi donc ce fameux panneau, il vous permet de configurer vos projets ainsi que de récupérer des informations importantes. Commençons tout de suite à voir à quoi servent les différents onglets proposés...

Si vous avez des onglets en plus ne vous étonnez pas. Cela voudra sûrement dire que mes screens ne sont pas à jour par rapport à votre version de Code::Blocks. Si c'est votre cas, veuillez me prévenir par MP afin que je rectifie cela au plus vite :) .


Project settings



Dans cet onglet, il vous est possible de paramètrer les options principales :

Title : Vous y entrez le nom de votre projet, il s'affichera dans l'arborescence à gauche de votre code.
Platforms : Une petite nouveauté, vous pouvez indiquer pour quel(s) OS votre projet est codé (cela n'a aucune influence sur le code).
Filename : Le chemin de votre projet.
Makefile : Permet de définir le Makefile que vous voulez utiliser (si vous ne savez pas ce que c'est cherchez un peu sur internet, ici ce n'est pas le sujet). Si vous ne cochez pas la case "This is a costum Makefile" alors il sera généré automatiquement et remplacera celui qui s'y trouvait auparavent.
Precompiled headers : Vous permet de choisir de quelle façon doivent être générés les headers précompilés. Si vous modifiez cela, vous devez supprimer l'ancien header afin d'éviter les conflits.
Object names generation : Très utile, cet ajout vous permet, dans de gros projets, d'éviter des problèmes d'écrasement avec des fichiers dont les noms sont identiques, vos fichiers seront renommés afin de palier à ce problème.

Il reste deux boutons :

Project's dependencies... : Permet de voir les dépendances de votre projet.
Project's build options... : Permet de paramètrer en profondeur les configurations cible (vous verrez plus tard ce que c'est :) ).

Notes



Attends ! T'aurais pas sauté plusieurs onglets là o_O ?

Effectivement, mais il ne s'agit pas d'une erreur... la raison c'est juste que je ne peux pas tout expliquer, d'autant plus que Code::Blocks change très fréquemment donc c'est dur de suivre :( . Mais ne vous inquiétez pas, l'utilisation de certains de ces onglets est expliquée plus tard.

Reprenons. Cet onglet est soi utile, soi inutile, mais dans tout les cas certains l'apprécieront... il permettra (comme son nom l'indique) de mettre des notes dans vos projets... moi personnellement j'adore parce qu'avant je marquais mes idées dans des fichiers texte et il fallait que je pense à les ouvrir ^^ .

En parlant de penser à les ouvrir, vous pouvez voir en bas du panneau qu'il y a une case à cocher : elle permet d'activer l'affichage des notes dès que l'on ouvre le projet, utile lorsque vous voulez envoyer votre projet à un ami... au moins il ne se perdra pas :-° .

"C/C++ parser options" et "Debugger options"



Ces deux onglets vous servent à éditer les options d'analyse de votre code. C'est relativement complexe, je ne vais donc pas vous expliquer tout de suite comment modifier cela, je le ferais peut-être mais dans la deuxième partie de ce big-tuto.

EnvVars options



Là ce n'est pas que c'est difficile mais il vous manque encore deux ou trois notions... j'aborde donc cela à la fin de ce chapitre ;) .

Les cibles de construction

Nous voiçi donc dans une partie très importante, nous allons apprendre à nous servir des "cibles de construction" (traduction personnelle de "Build Targets", c'est aussi l'explication de l'icône du chapitre ^^ ) qui sont très importantes mais surtout relativement utiles lorsque l'on travail sur un gros projet.

Mais... concrètement, c'est quoi ?

Et bien cela vous permet de créer plusieurs fois le même projet mais avec des paramètres différents. C'est vraiment très pratique... Imaginons que vous développiez un programme, lorsque vous le codez, vous le compilez avec les paramètres par défaut du compilateur mais lorsque vous voulez compilez le programme final vous préférez configurer le compilateur de façon plus pointieuse afin d'être sûr qu'il n'y aura aucun problème. Eh bien au lieu de faire deux projets qui auront le même code mais des paramètres différents vous avez juste à créer un projet avec un code et deux cibles de construction, vous n'avez plus qu'à paramétrer les cibles et hop !... vous choisissez la configuration souhaitée au moment de la compilation :D !

Je me doute bien que ça vous intéresse, nous allons donc voir comment faire cela ^^ .

Tout d'abord, il faut savoir où sont situées ces fameuses cibles. Rappellez-vous, lors de la présentation des onglets j'en avais sauté quelques un, choisissez d'abord l'onglet "Build targets", vous tombez sur un panneau de ce style :

Image utilisateur
Les cibles de construction


Build targets



Voilà un beau bordel... mais je vais vous aider à décortiquer ça. Sur la gauche, vous pouvez voir un cadre nommé "Build Targets", dans ce cadre il y a un menu contenant vos cibles de configurations, par défaut vous avez deux cibles qui sont nommées Debug et Release.

Stop ! À quoi elles servent ces deux cibles :o ?

Eh bien, la première cible nommée "Debug" a pour but, comme son nom l'indique, de vous aider à trouver les erreurs notamment lorsque vous faites une interface graphique, premièrement elle affiche constamment une console lors de l'exécution de votre programme mais aussi les options du compilateur sont différentes. La deuxième cible nommée "Release" vous permet simplement de compiler votre programme dans sa version finale, les options du compilateur sont celles par défaut et il y a une petite pointe d'optimisation.

Au moment de la compilation vous devrez choisir votre cible de construction, pour cela regardez la barre de compilation, vous verrez un menu avec deux cibles de construction par défaut. Il vous suffit de choisir la cible souhaitée :) .


Après ce petit détour, nous pouvons revenir au panneau : vous pouvez constater qu'à la droite de la liste se trouve plusieurs boutons. Les quatre premiers sont les plus élémentaires, ils permettent, dans l'ordre, d'ajouter une cible de construction, de la renommer, de la copier (un nouveau nom vous sera demandé) et de la supprimer.
Il nous reste cinq boutons :

Virtual Targets : Très utile ! Il permet de créer une cible virtuelle qui associe plusieurs cibles de construction...

J'ai rien compris !

C'est normal, je me suis mal expliqué, en fait vous avez deux cibles actuellement, celles-ci sont nommées "Debug" et "Release". Si, pendant vos compilations, vous avez autant besoin de la cible "Debug" que de la cible "Release" alors il serait bien de pouvoir les compiler en même temps... eh bien avec le bouton "Virtual Targets" c'est possible ! Commencez par cliquer dessus, vous verrez un panneau comme celui-ci :

Image utilisateur
La liste des cibles virtuelles

À gauche, vous avez vos cibles virtuelles (traduction de "virtual targets") et à droite vous pouvez voir à quelle(s) cible(s) est associé la cible virtuelle actuellement sélectionnée, vous pouvez en ajouter avec le bouton "Add", les éditer avec le bouton "Edit" et les supprimer avec le bouton "Remove".
Une dernière chose : lors de la compilation avec une cible virtuelle (pour la choisir vous devez faire comme lorsque vous choisissez une cible de construction) vous aurez plusieurs programmes créés (ceux des cibles de construction associées à la cible virtuelle), si vous cliquez sur le bouton pour exécuter ces programmes il vous sera alors demandé quelle cible de configuration vous souhaitez exécuter ;) .

Dependencies : Si vous cliquez dessus, un panneau s'ouvre alors, il vous permet de gérer les dépendances de votre projet. Je ne m'attarde pas là dessus vu que je n'en sais pas grand chose.

Re-order : Rien de plus simple ! Ce bouton vous permet de ré-ordonner vos cibles de construction.

Build options : Là je ne vais pas pouvoir vous faire une description immédiate, j'aborderai cela dans la deuxième partie de ce big-tuto en raison de sa complexité :( .

Create project from target : Un bouton encore une fois d'une grand utilité ! Son utilisation n'est pas fréquente mais cela n'empêche pas le fait qu'il est utile. Si vous cliquez dessus vous pourrez exporter la cible de construction sélectionnée dans un nouveau projet. Essayez par vous-même...

Voilà, c'est tout pour ce fameux cadre...

Selected build target options



Intéressons-nous maintenant au cadre de droite nommé "Selected build target options", comme son nom l'indique, il permet de configurer les paramètres de la cible sélectionnée (je précise que là ce sont des paramètres basiques, je vous apprendrais plus tard comment faire quelque chose de bien plus intéressant ;) ).

Voici donc la description de chaque bouton ou zone de texte dans l'ordre :

Platforms : En cliquant sur le bouton "..." vous aurez la possibilité de cocher les OS compatibles avec votre code, si ils sont tous cochés alors il sera inscrit "All" dans le champ.
Si vous réfléchissez bien vous pourrez alors découvrir l'utilité des cibles de construction : en effet, chaque cible peut alors créer un programme pour un OS (uniquement si vous avez un code portable) ! Il vous suffit donc de créer trois cibles, une pour Windows, une autre pour Linux et enfin une dernière pour Mac, puis de les configurer toutes les trois (là c'est compliqué car il ne s'agit pas simplement de choisir l'OS compatible...) et ensuite vous compilez chaque cible :D !

Type : Pas bien dur à comprendre ça, vous choisissez comment doit être lancé votre programme : en console, en interface graphique (que vous devez d'abord avoir codée), ect...
Les trois cases à cocher permettent, dans l'ordre :

Output filename : Vous permet de choisir le chemin de création de votre programme pour la cible de construction actuellement sélectionnée.
Si vous changez le chemin de destination mais que vous avez déjà compilé alors l'ancien programme ne sera pas supprimé automatiquement !

Les deux cases à cocher suivantes permettent, dans l'ordre :

Execution working dir : Cela vous permet de choisir le chemin d'exécution de votre programme, par défaut ce sera toujours le dossier de votre projet.
Objects output dir : Vous pouvez y spécifier le dossier où seront stockés les fichiers compilés (pour les têtes en l'air, vous avez un rappel de ce que c'est ici).

Build target files



Il nous reste plus qu'un dernier cadre nommé "Build target files", là je ne vais pas m'éterniser... il s'agit simplement de choisir les fichiers que vous voulez compiler ^^ .
Pensez bien aux dépendances avant de décochez tel ou tel fichier!


Les ajouts de fichiers à un projet



Je tenais au moins à vous informer sur ça : dès que vous ajouterez un fichier à votre projet il vous sera alors demandé avec quelles cibles de construction vous voulez que ce fichier soit compilé : faites votre choix ^^ .

Passons à la suite...

Les variables d'environnement

Comme promis, je vous explique maintenant le fonctionnement des variables d'environnement. Rappellez-vous ! C'est un onglet dans le panneau d'options nommé "EnvVars options", j'avais dû sauter ce passage car je tenais à ce que vous sachiez d'abord vous servir des cibles de construction.

Nous pouvons donc commencer...

Les variables d'environnement ne sont pas particulièrement difficiles à utiliser mais plutôt complexes à expliquer, je vais donc faire de mon mieux...

Lorsque vous utilisez les options de Code::Blocks vous avez la possibilité de faire appel à des variables, vous allez sûrement vous demandez quel en l'utilité... et bien aucune à part faire gagner du temps (le seul avantage c'est de pouvoir tout changer en modifiant simplement la valeur de la variable). Il est possible de faire des variables accessibles dans tous les projets mais vous pouvez aussi limiter votre projet à un seul groupe de variable (pratique si vous créez plusieurs variables de même nom, il suffit alors de les mettre dans des groupes différents), c'est pour cela que l'on a créé les variables d'environnement.

À noter que les variables créées dans les options de Code::Blocks sont faites pour vos projets et non pour vos codes.


Plutôt qu'un long discours, nous allons essayer nous-mêmes. Allez dans l'onglet "EnvVars options" et cochez la case "Select environment variables set to be applied", vous pourrez alors choisir quel groupe de variables vous souhaitez, normalement vous n'avez que "default" de disponible. Bien, maintenant que vous avez choisi votre groupe, il faut lui attribuer des variables, pour cela fermer le panel des options en cliquant sur "OK" puis aller dans "Settings -> Environment", là descendez dans le menu de gauche jusqu'à voir "Environment variables", cliquez dessus.

Image utilisateur
Les variables d'environnement
Si vous avez bien suivi vous êtes normalement tombé dans le panneau (elles sont bien mes blagues hein :-° ?) :

Par défaut, vous êtes sur le groupe nommé "default", nous allons rester dessus, retenez seulement qu'il suffit de cliquer sur "Create..." pour en créer un nouveau ;) .
Pour créer une nouvelle variable nous allons cliquer sur "Add", mettez le nom suivant : debug_chemin_prog et entrez la valeur bin\debug\, faites de même pour la variable release_chemin_prog et la valeur bin\release\.

Bien, vos variables sont créées mais ne sont pas encore initialisées, vérifiez donc quelles soient toutes les deux cochées puis cliquez sur le bouton "Set now" ce qui aura pour effet de mettre vos variables en mémoire vous pourrez alors vous en servir immédiatement.

Notez bien que si vous n'aviez pas cliquez sur "Set now" vos variables auraient alors été initialisées au prochain démarrage. Encore une chose : si vous ne cochez pas les variables alors celles-ci ne seront jamais initialisées.


Bon, maintenant fermez le panneau puis retournez dans les options votre projet puis dans l'onglet "Build targets", sélectionnez la cible "Debug" et entrez alors dans le champ "Output filename" la chaîne de caractères suivante : $(debug_chemin_prog)programme.exe
Faites de même pour la cible "Release" mais entrez la chaîne suivante : $(release_chemin_prog)programme.exe

Voilà ! Ce que nous venons de faire est totalement mais alors totalement inutile mais bon il s'agissait de vous montrer le principe des variables d'environnement :D !

Décortiquons un peu tout ça :

Nous avons tout d'abord commencé par choisir le groupe de variables que nous souhaitions puis nous avons créé deux variables nommées debug_chemin_prog et release_chemin_prog. Ensuite nous avons modifié les chemins de création du programme en y intégrant les deux variables, vous avez pu alors remarquer qu'il fallait entourer la variable des trois caractères suivants pour pouvoir afficher sa valeur et pas son nom : $()

Nous avons ensuite rajouté le nom du programme et son extension, en clair nous obtenons le chemin bin\Debug\programme.exe pour la cible "Debug" et le chemin bin\Release\programme.exe pour la cible "Release", en clair on en revient au même point mais c'était juste pour vous montrer l'usage des variables d'environnement ;) .

Les variables globales

Certains trouveront bizarre de voir cette partie dans ce chapitre... malheureusement, je n'ai pas le choix car c'est l'unique chapitre où je peux aborder les variables globales, je ne vais pas créer un nouveau chapitre uniquement pour parler des variables globales :/ .


Pour commencer, les variables globales sont nouvelles dans Code::Blocks, mais comprenons nous : il ne s'agit pas ici des variables globales que vous mettez dans votre code, ce sont des variables spécifiques à Code::Blocks qui n'ont rien à voir avec votre code.

Ne confondez pas les variables globales avec les variables d'environnement ! Elles n'ont rien à voir entre elles !


Mais alors c'est quoi ces variables et à quoi elles servent o_O ?

Il s'agit d'un type de variable qui permet d'enregistrer les chemins d'installation de vos bibliotèques, c'est beaucoup plus pratique que de devoir configurer à chaque fois un nouveau projet pour une bibliotèque spécifique.

Ça vous intéresse ? Alors passons à la suite, et vous verrez que l'on ne peut plus s'en passer ^^ .

Allez dans le panneau d'édition des variables globales "Settings -> Global variables". Vous voyez maintenant quelque chose d'assez... bordelique :p !

Supposons que vous vouliez installer la SDL...

Là, j'explique pour la SDL mais c'est valable pour n'importe quel autre bibliotèque supportée par Code::Blocks ;) .


Donc si vous voulez installer la SDL, vous allez devoir créer une variable globale nommée "sdl", pour cela cliquez sur "New" (celui du bas) et entrez le nom de votre variable (dans notre cas "sdl").

Dans la partie basse de la fenêtre, vous verrez trois champs importants : "base", "include" et "lib"
Dans le champ "base", vous devez spécifier le dossier englobant toute la SDL (pour moi c'est "C:\SDL-1.2.11"). Les deux champs suivants sont facultatifs uniquement dans un certain cas : il faut que les dossiers "include" et "lib" soit directement les sous-répertoires du chemin indiqué dans "base", si ce n'est pas le cas vous devrez indiquer les chemins d'accès à ces dossiers.

Voilà ce que vous devriez normalement obtenir :

Image utilisateur
L'éditeur des variables globales


Et ensuite ? Eh bien c'est terminé ! Maintenant, tout ce que vous avez à faire c'est créer un nouveau projet de type SDL (File -> New -> Project -> SDL project) et indiquer, lorsqu'on vous le demandera, que vous voulez utiliser la variable "sdl" en écrivant dans le champ "Please select SDL's location" la syntaxe suivante :

Code : Autre
1
$(#sdl)

Q.C.M.

Une cible de construction sert à...
On ne peut pas associer plusieurs cibles de construction à une cible virtuelle.
La valeur d'une variable peut s'inclure dans une chaîne de caractère avec les signes :

Statistiques de réponses au QCM


Voilà, c'est tout pour ce chapitre et je pense que ça vous suffit à vous aussi. Ce chapitre était gros mais plein de savoir :p !

Vous voilà maintenant fin prêts à paramétrer correctement tous vos projets ainsi que d'installer correctement une bibliotèque, croyez-moi ce n'est pas une perte de temps ^^ . Ça peut être même très utile dans certains cas ! Notamment quand vous utilisez une bibliotèque non standard.

Le prochain chapitre portera sur les différents plugins de Code::Blocks ;) .
Chapitre précédent Sommaire Chapitre suivant
Retour en haut Retour en haut


Créé : le 06/05/2007 à 21:09:29
Modifié : le 28/08/2008 à 16:29:42
Avancement : 100%
Licence : Creative Commons BY-NC-ND

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 435 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0342s (0.0222s)