C++-Linker
Nach oben zu Optionen für den C++-Linker
Projekt > Optionen > C++-Linker
In diesem Dialogfeld setzen Sie Optionen für den C++-Linker.
Inhaltsverzeichnis |
| Optionen | Beschreibung |
|---|---|
|
Ziel, Übernehmen, Speichern |
Siehe Optionen für das Ziel. |
|
Gemeinsame Elemente |
Optionen des C++-Linkers werden auf allen Plattformen unterstützt: Die Optionen auf dieser Seite werden von allen C++-Linkern verwendet und daher auf allen unterstützten Zielplattformen (wie Win32, Win64, OS X) unterstützt. Die angegebenen Linker-Schalter (Optionen) werden von ILINK32 und ILINK64 unterstützt.
Linken
| Link-Optionen | Beschreibung |
|---|---|
|
Inkrementelles Linken deaktivieren |
Unterdrückt die Erzeugung von Linker-Statusdateien und deaktiviert das inkrementelle Linken. Wenn Sie -Gn verwenden, benötigen nachfolgende Link-Vorgänge genauso lange wie der erste. |
|
Zum Linken benötigte Zeit anzeigen |
Nimmt die zum Fertigstellen des Linkens benötigte Zeit in die Linker-Ausgabe auf. |
|
Vollständige Debug-Informationen |
Fügt diejenigen Informationen in die Ausgabedatei ein, die erforderlich sind, um Anwendungen mit dem integrierten Debugger von C++Builder zu debuggen.
In der Befehlszeile bewirkt diese Option, dass der Linker in der Beispiel: Der folgende Befehl schließt Debug-Informationen für die Module ILINK32 mod1 -v+ mod2 mod3 -v- mod4 Vorgabe = False |
|
.drc-Datei erzeugen |
ILINK32 erzeugt Delphi-kompatible RC-Dateien (DRC-Dateien). Die DRC-Datei hat denselben Namen wie die ausführbare Datei und wird in dasselbe Verzeichnis wie diese ausgegeben. |
|
Importbibliothek erzeugen |
Weist den Linker an, die Importbibliotheksdatei zu erzeugen. Importbibliotheken für DLLs haben die Dateierweiterung .lib. Diese Datei wird zum Linken von dynamischen Bibliotheken verwendet. Hinweis: Diese Option wird nur für dynamische C++-Link-Bibliotheksprojekte angezeigt. Vorgabe = True |
|
Importbibliothek erzeugen |
Erzeugt eine kleine statische Bibliothek, die die Exporte eines Package oder einer .dll beschreibt, damit eine Anwendung diese linken kann. Ohne Importbibliothek können Sie das Package in C++ nicht verwenden. Die Erweiterung der Importbibliothek lautet:
Nur für C++-Packages aktiviert. Vorgabe = True |
|
Statische Package-Bibliothek (.lib) erzeugen |
Erzeugt eine statisch linkbare Package-Bibliothek. Zum Erzeugen einer statischen C++-Package-Bibliothek (.lib) ist ein Satz von .obj-Dateien erforderlich, die nicht mit den zum Erzeugen der dynamischen Bibliothek (.bpl) verwendeten .obj-Dateien identisch sind. Wenn diese Option aktiviert ist (Vorgabe), generiert ein Erzeugen- oder Compilieren-Befehl zwei Gruppen von .obj-Dateien:
Die .obj-Dateien für die statische Bibliothek (.lib) werden in ein Unterverzeichnis ausgegeben, das in Ihrem Projektverzeichnis, normalerweise im Verzeichnis Wenn diese Option deaktiviert ist, generiert ein Erzeugen- oder Compilieren-Befehl nur die dynamische Bibliothek (.bpl). Weitere Informationen finden Sie unter Erzeugen von statischen Packages. Nur für C++-Packages aktiviert. Vorgabe = True |
|
Ausgabedateien beibehalten |
Weist den Linker an, die Ausgabedateien beizubehalten, die sonst bei Fehlern gelöscht würden. Der Linker wurde geändert, um seine Ausgabedatei (EXE/DLL) zu löschen, wenn beim Linken Fehler auftreten. Das alte Verhalten bestand darin, diese Dateien beizubehalten, anstatt sie zu löschen. |
| Mit dynamischer RTL linken |
Steuert, ob die C-RTL die Laufzeitbibliothek (cc3290.dll) dynamisch oder statisch linkt. |
| Mit Delphi-Laufzeitbibliothek linken (RTL-Package und cp32mt.lib/cp32mti.lib) |
Stellt sicher, dass die Anwendung mit Folgendem gelinkt wird:
C++ linkt mit der Delphi-RTL, wenn diese Option aktiviert ist oder das Projekt eine Framework-Verbindung aufweist. FMX-Formularprojekte linken aufgrund ihrer Framework-Verbindung mit der Delphi-RTL. Verwenden Sie diese Option für C++-Anwendungen ohne Framework-Verbindungen, die Delphi-Typen (wie UnicodeString, Variant usw.) verwenden oder auf von Units aus dem Delphi-RTL-Package (wie SysUtils, Classes, IOUtils usw.) bereitgestellte Funktionen zugreifen sollen. C++-Konsolenanwendungen können Delphi-Exceptions nur behandeln, wenn Sie diese Option aktivieren oder beim Erstellen der Anwendung mit dem Experten Neue Konsolenanwendung (C++) ein Framework (VCL oder FireMonkey) auswählen. |
|
Maximale Fehleranzahl festlegen |
Gibt die Anzahl der maximal zulässigen Fehler (nn) an, ehe das Linken abgebrochen wird. |
Erweiterte Optionen
| Erweiterte Optionen | Beschreibung |
|---|---|
|
Weitere Optionen |
Geben Sie beliebige, weitere Linker-Optionen an. Die entsprechenden Optionen finden Sie in der Befehlszeilenhilfe für ILINK32 oder unter ILINK32.EXE: Der inkrementelle 32-Bit-Linker. |
|
Beim Linken Schreibweise beachten |
Unterscheidet zwischen Klein- und Großschreibung in public und externen Symbolen. Normalerweise sollte diese Option aktiviert sein, da sowohl C als auch C++ zwischen Groß- und Kleinschreibung unterscheiden. |
|
Vor dem Linken Status leeren |
Entfernt vorhandene inkrementelle Linker-Statusdateien und erstellt diese Dateien dann neu, ehe das Linken fortgesetzt wird. Diese Option ermöglicht die Aktualisierung der Statusdateien. |
|
DLLs verzögert laden |
Legt DLLs fest, die verzögert geladen werden sollen. Das verzögerte Laden ist bei DLLs sinnvoll, die häufig von einer Anwendung verwendet werden, kann aber zu Lasten des Startvorgangs gehen. Verzögert geladene DLLs werden erst dann geladen und initialisiert, wenn der Eintrittspunkt in der DLL tatsächlich aufgerufen wird. Es gibt eine begleitende RTL-Unterstützung für das verzögerte Laden von DLLs, mit der Benutzer Fehler beim Laden behandeln und das verzögerte Ladesystem bei Bedarf ersetzen können. Siehe die Beschreibung der |
|
Image-Prüfsumme ermitteln |
Wenn diese Option aktiviert ist, wird die Prüfsumme des Ziels berechnet und in den PE-Header des Ziels aufgenommen. Diese Information wird von NT-Kernel-Treibern und System-DLLs verwendet. |
|
Schnelles TLS |
Weist TLS (Thread-lokaler Speicher) von Windows zu, anstatt den Mechanismus zur gemeinsamen Nutzung von TLS zu verwenden. |
|
Dateiausrichtung |
Gibt die Seitenausrichtung für Code und Daten innerhalb der ausführbaren Datei an. Der Linker verwendet den Dateiausrichtungswert, wenn er die verschiedenen Objekte und Abschnitte (z.B. Code und Daten) in die Datei schreibt. Angenommen, Sie verwenden den Vorgabewert 0x200, so speichert der Linker den Abschnitt des Image in 512-Byte-Grenzen in der ausführbaren Datei. Wenn Sie diese Option verwenden, müssen Sie einen Wert für die Dateiausrichtung angeben, der eine Potenz von 2 ist, wobei der kleinste Wert 16 ist. Der veraltete Stil dieser Option ( Die Befehlszeilenversion dieser Option ( |
|
Objektausrichtung |
Der Linker legt anhand des Objektausrichtungswertes die virtuellen Adressen der verschiedenen Objekte und Abschnitte (wie Code und Daten) in Ihrer Anwendung fest. Angenommen, Sie geben als Objektausrichtungswert 8192 an, so richtet der Linker die virtuellen Adressen der Abschnitte im Image an den 8192-Byte-Grenzen (0x2000) aus. Wenn Sie diese Option verwenden, müssen Sie einen Wert für die Objektausrichtung angeben, der eine Potenz von 2 ist, wobei der kleinste Wert 4096 (0x1000, Vorgabe) ist. Die Befehlszeilenversion dieser Option ( |
|
Ressourcen ersetzen |
Fügt Ressourcen hinzu und/oder ersetzt diese, ohne die vorhandenen Ressourcen zu entfernen. |
|
Ausführliches Linken |
Setzt die ausführliche Link-Option für RLINK32, wodurch beim Ressourcen-Linken detaillierte Informationen ausgegeben werden. |