Überblick zu Build-Konfigurationen
Nach oben zu Compilieren, Build erstellen und Anwendungen ausführen - Index
Build-Konfigurationen bestehen aus Optionen, die Sie auf allen mit dem Erzeugen zusammenhängenden Registerkarten des Dialogfeldes Projekt > Optionen festlegen können. Build-Konfigurationen werden in der Projektdatei (z. B. .dproj
oder .cbproj
) gespeichert.
Inhaltsverzeichnis
Jedes Projekt enthält drei Standard-Build-Konfigurationen
Die Projektverwaltung enthält den Knoten "Build-Konfigurationen", in dem die verfügbaren Build-Konfigurationen aufgelistet sind:
Basis, Debug und Release sind die drei Standard-Build-Konfigurationen. In der Projektverwaltung repräsentiert der Knoten Build-Konfigurationen die Konfiguration Basis, und die Konfigurationen Debug und Release werden in getrennten Knoten aufgeführt.
Sie können in allen Konfigurationen, auch in Basis, Optionswerte ändern. Sie können die Konfigurationen Debug und Release löschen, nicht jedoch die Konfiguration Basis.
Wenn Sie ein Projekt compilieren und speichern, werden die Dateien in einem Verzeichnis mit dem Namen der aktuellen Build-Konfiguration gespeichert. Die Verzeichnisse Debug und Release sind standardmäßig vorhanden, und für jede aktive benutzerdefinierte Build-Konfiguration wird beim Speichern eines Projekts ein Verzeichnis erstellt.
Basiskonfiguration
Die Basiskonfiguration stellt den Standardsatz von Optionswerten dar, der in allen nachfolgend erstellten Konfigurationen verwendet wird. Gemeint sind hier die Optionswerte für das Compilieren und Linken sowie andere Optionen, die Sie im Dialogfeld "Projektoptionen"(Projekt > Optionen) für ein Projekt ändern können.
Sie können in allen Konfigurationen, auch in der Basiskonfiguration, Optionswerte ändern. Sie können die Konfigurationen "Debug" und "Release" löschen, nicht jedoch die Konfiguration "Basis".
Debug-Konfiguration
Die Debug-Konfiguration erweitert die Basiskonfiguration durch die Deaktivierung der Optimierung und die Aktivierung des Debugging sowie das Festlegen bestimmter Syntaxoptionen.
Die Standard-Build-Konfiguration "Debug", die sich in der Projektverwaltung für Ihr Delphi-Projekt befindet, wird von Delphi erzeugt, nachdem Sie eine neue Anwendung bzw. ein neues Projekt erstellt haben.
- Hinweis: Es ist empfehlenswert, die Debug-Konfiguration während des Entwickeln, Debuggens und Bearbeitens einer Anwendung zu verwenden.
Release-Konfiguration
Die Release-Konfiguration stellt eine Erweiterung der Basiskonfiguration dar, die keine symbolischen Debug-Informationen erzeugt und für TRACE- und ASSERT-Aufrufe auch keinen Quelltext generiert. Dadurch wird die Größe der ausführbaren Datei reduziert.
Die Standard-Build-Konfiguration "Release", die sich in der Projektverwaltung für Ihr Delphi-Projekt befindet, wird von Delphi erzeugt, nachdem Sie eine neue Anwendung bzw. ein neues Projekt erstellt haben.
- Hinweis: Die Verwendung der Release-Konfiguration empfiehlt sich, wenn Sie die Anwendung zur Freigabe erstellen. Die erzeugte ausführbare Datei enthält keine Debug-Informationen und ist kleiner und schneller als eine Anwendung, die mit der Debug-Konfiguration erstellt wird.
Festlegen bestimmter Compiler-Optionen
Sie können auf der Seite Projekt > Optionen > Delphi-Compiler > Compilieren die folgenden Optionen festlegen, die sich speziell auf Build-Konfigurationen beziehen:
Spezielle Optionen |
Quelltexterzeugung |
Debuggen | ||
Optimierung |
Stack-Frames |
Debug-Informationen |
Lokale Symbole | |
Debug-Konfiguration |
AUS Der Compiler führt KEINE Codeoptimierungen durch. |
EIN Für Prozeduren und Funktionen werden immer Stack-Frames erzeugt. |
EIN Wenn ein Programm oder eine Unit mit dieser aktivierten Option compiliert wird, können Sie das betreffende Modul mit dem integrierten Debugger in Einzelschritten testen und Haltepunkte setzen. |
EIN Wenn ein Programm oder eine Unit mit dieser aktivierten Option compiliert wird, können Sie die lokalen Variablen des Moduls im integrierten Debugger überprüfen und ändern. |
Release-Konfiguration |
EIN Der Compiler führt eine Reihe von Codeoptimierungen durch. |
AUS Für Prozeduren und Funktionen werden KEINE Stack-Frames erzeugt. |
AUS Wenn ein Programm oder eine Unit mit dieser aktivierten Option compiliert wird, können Sie das betreffende Modul NICHT mit dem integrierten Debugger in Einzelschritten testen und KEINE Haltepunkte setzen. |
AUS Wenn ein Programm oder eine Unit mit dieser aktivierten Option compiliert wird, können Sie die lokalen Variablen des Moduls im integrierten Debugger NICHT überprüfen und ändern. |
Sie legen die aktive Konfiguration für Ihre Projekte fest
Allen Projekten ist eine aktive Build-Konfiguration zugewiesen, sowie weitere von Ihnen erstellte, inaktive Build-Konfigurationen. Der Name der aktiven Build-Konfiguration wird in der Projektverwaltung oben im Knoten Build-Konfigurationen in Klammern angezeigt, und die aktive Konfiguration wird außerdem in der Liste der verfügbaren Konfigurationen in diesem Knoten in Fettschrift dargestellt. Die Befehle Compilieren , Erzeugen und Bereinigen verwenden die aktive Build-Konfiguration für das Projekt.
Zum Aktivieren einer Konfiguration führen Sie einen der folgenden Schritte aus:
- Doppelklicken Sie in der Projektverwaltung auf die Konfiguration.
- Klicken Sie mit der rechten Maustaste auf die Konfiguration, und wählen Sie im Kontextmenü Aktivieren aus.
Weitere Informationen dazu finden Sie unter Aktivieren einer Build-Konfiguration für ein Projekt.
Build-Konfigurationen erben Werte vom Vorgänger
Jede Konfiguration, außer Basis, basiert auf einer anderen Konfiguration, die ihre Werte vererbt. Die Konfigurationen Debug und Release erben ihre Werte von der Konfiguration Basis.
Im Konfigurations-Manager können Sie eine neue Konfiguration erstellen, die auf einer beliebigen anderen Konfiguration basiert. Die neue Konfiguration erbt die Optionswerte von ihrem Vorgänger. Nach dem Erstellen einer Konfiguration lassen sich deren Optionswerte beliebig ändern, und Sie können sie als aktive Konfiguration für ein oder mehrere Projekte übernehmen. Alle Konfigurationen, außer Basis, können auch gelöscht werden.
Wenn Sie die Werte von Optionen nicht ändern, werden die Werte von der übergeordneten Konfiguration geerbt. Diese Vererbung ist nicht statisch: wenn die übergeordnete Konfiguration geändert wird, ändern sich auch die geerbten Werte aller untergeordneten Konfigurationen.
Der Standardwert einer Option ist ihr Wert in der übergeordneten Konfiguration. Sie können eine Option durch Löschen des Wertes im Dialogfeld "Projektoptionen" auf ihren Standardwert zurücksetzen.
Konfigurationen und Optionsgruppen im Vergleich
Sie können die Optionswerte einer Konfiguration als benannte Optionsgruppe (eine .optset-Datei) in einer Datei speichern. Optionsgruppen lassen sich auf jede beliebige Konfiguration eines jeden Projekts anwenden. Sie haben die Möglichkeit, Optionsgruppen entweder per Wert (die Werte der Optionsgruppe werden nur einmal übernommen) oder per Referenz (damit nachfolgende Änderungen der Optionsgruppe auch in die Konfiguration übernommen werden) anzuwenden.
Beachten Sie, dass eine Build-Konfiguration nicht dasselbe wie eine Optionsgruppe ist, obwohl sie Ähnlichkeiten aufweisen. Beide enthalten eine Gruppe von Optionswerten. Der Hauptunterschied besteht darin, dass Konfigurationen mit Projekten verbunden sind, während Optionsgruppen als von Projekten unabhängige Dateien gespeichert werden. Build-Konfigurationswerte werden in der Projektdatei gespeichert. Beim Speichern eines Projekts werden daher die Änderungen der Build-Konfigurationen gespeichert, aber die Optionsgruppen bleiben unverändert. Das Ändern der Konfigurationen eines Projekts und das Hinzufügen oder Löschen von Konfigurationen wirkt sich nicht auf die Optionsgruppen aus. Genauso verändert das Speichern von Optionsgruppen die Build-Konfigurationen nicht.
Jedes Projekt verfügt - unabhängig von anderen Projekten - über eine eigene Konfigurationsliste. Sie können jedoch jede beliebige Optionsgruppe auf jedes beliebige Projekt anwenden. Die Dropdown-Liste Build-Konfiguration im Dialogfeld Projektoptionen enthält alle Build-Konfigurationen für das Projekt, aber keine Optionsgruppen. In der Projektverwaltung sind unter dem Knoten "Build-Konfigurationen" sowohl die Konfigurationen als auch die referenzierten Optionsgruppen aufgeführt.
Werte in Konfigurationen und Optionsgruppen
Konfigurationen und Optionsgruppen müssen nicht für alle möglichen Projektoptionen Werte enthalten. Sie enthalten nur die Optionen, die sich von der übergeordneten Konfiguration unterscheiden. Auch die Basis-Konfiguration enthält nicht für alle möglichen Optionen Werte.
Wenn ein Optionswert nicht in einer Konfiguration enthalten ist, sucht die IDE in der übergeordneten Konfiguration, dann in der der übergeordneten Konfiguration übergeordneten Konfiguration usw. Wird der Wert in keiner Konfiguration der Vererbungskette gefunden, wird er von dem entsprechenden Tool, das konfiguriert wird, festgelegt.
Wenn eine Konfigurationsvererbung beispielsweise keinen Wert für eine bestimmte Compiler-Option enthält, wird der Vorgabewert vom Compiler selbst festgelegt. Wenn Sie eine Konfiguration oder eine Optionsgruppe speichern, werden nur diese Werte gespeichert, nicht Werte für alle Optionen.