01
of 03
Configurations de build - Base: Debug, Release

La fenêtre Project Manager de votre Delphes (RAD Studio) IDE affiche et organise le contenu de votre groupe de projets actuel et tous les projets qu'il contient. Il listera toutes les unités qui font partie de votre projet ainsi que tous les formulaires et fichiers de ressources inclus.
La section Configurations de build répertorie les différentes configurations de build que vous avez pour votre projet.
Certains plus récents (pour être exact: à partir de Delphi 2007) Les versions Delphi ont deux (trois) configurations de construction par défaut: DEBUG et RELEASE.
L'article sur la compilation conditionnelle 101 mentionne les configurations de génération mais n'explique pas la différence dans les détails.
Debug vs. Libération
Étant donné que vous pouvez activer chacune des configurations de build que vous voyez dans le gestionnaire de projets et créer votre projet en produisant un fichier exécutable différent, la question est Quelle est la différence entre Debug et Release?
La dénomination elle-même: "debug" et "release" devrait vous orienter dans la bonne direction.
- La configuration de débogage doit être active et utilisée pendant le développement, le débogage et la modification de votre application.
- La configuration de la version doit être activée lorsque nous construisons votre application afin que le fichier exécutable produit soit envoyé aux utilisateurs.
Pourtant, la question demeure: quelle est la différence? Que pouvez-vous faire lorsque le «débogage» est actif et ce qui est inclus dans le fichier exécutable final par rapport à à quoi ressemble l'exécutable lorsque "release" est appliqué?
Configurer les configurations
Par défaut, il existe trois (même si dans le gestionnaire de projets vous n'en voyez que deux) les configurations de construction créées par Delphi lorsque vous démarrez un nouveau projet. Ce sont Base, Debug et Release.
le Configuration de base agit comme un ensemble de base de valeurs d'option qui est utilisé dans toutes les configurations que vous créez par la suite.
Les valeurs des options mentionnées sont les compilation et mise en relation et un autre ensemble d'options que vous pouvez modifier pour votre projet à l'aide de la boîte de dialogue Options du projet (menu principal: Projet - Options).
le Configuration de débogage étend Base en désactivant l'optimisation et en activant le débogage, ainsi qu'en définissant des options de syntaxe spécifiques.
le Configuration de la version étend Base pour ne pas produire d'informations de débogage symboliques, le code n'est pas généré pour les appels TRACE et ASSERT, ce qui signifie que la taille de votre exécutable est réduite.
Vous pouvez ajouter vos propres configurations de build et vous pouvez supprimer les configurations de débogage et de version par défaut, mais vous ne pouvez pas supprimer celle de base.
Les configurations de build sont enregistrées dans le fichier de projet (.dproj). Le DPROJ est un fichier XML, voici comment la section avec les configurations de build:
00400000.. \ $ (Config) \ $ (Plate-forme) WinTypes = Windows; WinProcs = Windows; DbiTypes = BDE; DbiProcs = BDE; $ (DCC_UnitAlias). \ $ (Config) \ $ (Plate-forme) DEBUG; $ (DCC_Define) faux. vrai. faux. RELEASE; $ (DCC_Define) 0. faux.
Bien sûr, vous ne modifierez pas le fichier DPROJ manuellement, il est maintenu par Delphi.
Vous * pouvez * renommer les configurations de build, vous * pouvez * modifier les paramètres de chaque configuration de build, vous * pouvez * faire en sorte que "release" soit pour le débogage et "debug" soit optimisé pour vos clients. Par conséquent, vous devez savoir ce que vous faites :)
Compiler, construire, exécuter
Lorsque vous travaillez sur votre application et que vous la développez, vous pouvez compiler, générer et exécuter l'application directement à partir de l'EDI. La compilation, la construction et l'exécution produiront le fichier exécutable.
La compilation vérifiera la syntaxe de votre code et compilera l'application - en prenant en compte uniquement les fichiers qui ont changé depuis la dernière version. La compilation produit des fichiers DCU.
La construction est une extension de la compilation où toutes les unités (même celles qui ne sont pas modifiées) sont compilées. Lorsque vous modifiez les options du projet, vous devez créer!
L'exécution compile le code et exécute l'application. Vous pouvez exécuter avec le débogage (F9) ou sans débogage (Ctrl + Maj + F9). S'il est exécuté sans débogage, le débogueur intégré à l'EDI ne sera pas invoqué - vos points d'arrêt de débogage "ne" fonctionneront pas.
Maintenant que vous savez comment et où les configurations de build sont enregistrées, voyons la différence entre les builds Debug et Release.
02
of 03
Configuration de la construction: DEBUG - pour le débogage et le développement

Le débogage de configuration de construction par défaut, que vous pouvez localiser dans le gestionnaire de projet pour votre projet Delphi, est créé par Delphi lorsque vous créé une nouvelle application / projet.
La configuration de débogage désactive l'optimisation et active le débogage.
Pour modifier la configuration de construction: cliquez avec le bouton droit sur le nom de la configuration, sélectionnez "Modifier" dans le menu contextuel et vous vous retrouverez en regardant la boîte de dialogue Options du projet.
Options de débogage
Étant donné que le débogage étend la construction de la configuration de base, les paramètres qui ont une valeur différente seront affichés en gras.
Pour le débogage (et donc le débogage), les options spécifiques sont les suivantes:
- Delphi Compiler - Compilation - Génération de code - Optimisation désactivée - le compilateur n'effectuera PAS un certain nombre d'optimisations de code, telles que le placement de variables dans les registres CPU, l'élimination des sous-expressions courantes et la génération de variables d'induction.
- Delphi Compiler - Compilation - Génération de code - Cadres de pile ON - les cadres de pile sont toujours générés pour les procédures et les fonctions, même lorsqu'ils ne sont pas nécessaires.
- Delphi Compiler - Compilation - Débogage - Informations de débogage ON - lorsqu'un programme ou une unité est compilé avec cette option activée, le le débogueur intégré vous permet de définir des points d'arrêt en une seule étape. Les informations de débogage étant "activées" n'affectent pas la taille ou la vitesse du programme exécutable - les informations de débogage sont compilées dans les DCU et ne sont pas liées dans l'exécutable.
- Delphi Compiler - Compilation - Débogage - Symboles locaux ON - Lorsqu'un programme ou une unité est compilé avec cette option activée, le le débogueur intégré vous permet d'examiner et de modifier les variables locales du module. Les symboles locaux étant "activés" n'affectent pas la taille ou la vitesse du programme exécutable.
REMARQUE: par défaut, le "utiliser debug .dcus" l'option est désactivée. Activer cette option vous permet de déboguer le code source Delphi VCL (définir un point d'arrêt dans la VCL)
Voyons maintenant ce qu'est "Release" ...
03
of 03
Configuration de la version: RELEASE - pour distribution publique

La version de configuration de build par défaut, que vous pouvez localiser dans le gestionnaire de projets de votre projet Delphi, est créée par Delphi lorsque vous créez une nouvelle application / un nouveau projet.
La configuration des versions active l'optimisation et désactive le débogage, le code n'est pas généré pour les appels TRACE et ASSERT, ce qui signifie que la taille de votre exécutable est réduite.
Pour modifier la configuration de construction: cliquez avec le bouton droit sur le nom de la configuration, sélectionnez "Modifier" dans le menu contextuel et vous vous retrouverez en regardant la boîte de dialogue Options du projet.
Options de version
Étant donné que la version étend la construction de la configuration de base, les paramètres qui ont une valeur différente seront affichés en gras.
Pour la version (la version à utiliser par les utilisateurs de votre application - pas pour le débogage), les options spécifiques sont les suivantes:
- Delphi Compiler - Compilation - Génération de code - Optimisation activée - le compilateur effectuera un certain nombre d'optimisations de code, telles que le placement de variables dans les registres CPU, l'élimination des sous-expressions courantes et la génération de variables d'induction.
- Delphi Compiler - Compilation - Génération de code - Cadres de pile désactivés - les trames de pile ne sont PAS générées pour les procédures et les fonctions.
- Delphi Compiler - Compilation - Débogage - Informations de débogage désactivées - lorsqu'un programme ou une unité est compilé avec cette option désactivée, le le débogueur intégré ne vous permet PAS de définir une seule étape et de définir des points d'arrêt.
- Delphi Compiler - Compilation - Débogage - Symboles locaux désactivés - Lorsqu'un programme ou une unité est compilé avec cette option désactivée, le le débogueur intégré ne vous permet PAS d'examiner et de modifier les variables locales du module.
Ce sont les valeurs par défaut définies par Delphi pour un nouveau projet. Vous pouvez modifier l'une des options de projet pour créer votre propre version de débogage ou publier des configurations de build.