C++-Linker-Warnungen

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu C++-Linker


Projekt > Optionen > C++-Linker > Warnungen

In diesem Dialogfeld legen Sie Warnungsoptionen für den C++-Linker fest.

Optionen Beschreibung

Ziel, Übernehmen, Speichern

Siehe Optionen für das Ziel.

Gemeinsame Elemente

Siehe Gemeinsame Elemente auf den Projektoptionsseiten.

Hinweis: Die Seite Warnungen unterstützt nur ILINK32 (32-Bit-Windows), ILINK64 (64-Bit-Windows) und XLINK (OS X).
Option Beschreibung

Alle Warnungen deaktivieren

Deaktiviert alle Warnungen und Fehlermeldungen. Vorgabe = False

Alle Warnungen aktivieren

Zeigt alle Warnungen und Fehlermeldungen an. Vorgabe = False

Ausgewählte Warnungen

Aktiviert nur die speziellen Warnungen, die auf True gesetzt sind. Klicken Sie auf +, um die Liste mit den ILINK32-Warnungen zu öffnen. Vorgabe = True

Option Vorgabe Beschreibung Option

Versuch, nicht public Symbol zu exportieren

Ein

Ein Symbolname ist im EXPORTS-Abschnitt der Moduldefinitionsdatei aufgeführt, aber in den gelinkten Modulen wurde kein als public deklariertes Symbol mit diesem Namen gefunden.

Mögliche Ursachen:

  • Sie versuchen, eine Funktion zu exportieren, die nicht als public deklariert ist.
  • Sie haben das Schlüsselwort _export in der Deklaration einer Funktion angegeben, aber nicht in ihrer Definition oder umgekehrt.
  • Sie haben einen Schreibfehler gemacht.
  • Sie exportieren eine Prozedur, die deklariert, aber nicht definiert ist.
  • Bei Exporten mit Groß-/Kleinschreibung erfordert die von Windows verwendete Pascal-Aufrufkonvention, dass diese Symbole alle in Großbuchstaben vorliegen.

-wexp

Package ohne Units erstellen

Ein

Sie versuchen, ein Package zu erstellen, das keine Units enthält. Überprüfen Sie die "Enthält"-Liste, um sicherzustellen, dass die zugehörigen Units aufgeführt sind. (In der "Enthält"-Liste wird festgelegt, welche Unit-Dateien in das Package eingebunden werden sollen.)

-wnou

Image als ausführbare Datei gelinkt, aber mit der Erweiterung .DLL

Ein

Der Linker erzeugt diese Warnung, wenn eine ausführbare Datei erzeugt und in einer Datei mit der Erweiterung .DLL oder .BPL gespeichert wurde. Diese Warnung tritt normalerweise auf, wenn Sie versuchen, eine .DLL oder .BPL zu erzeugen, aber vergessen haben, ein .DLL- oder .BPL-Ziel anzugeben.

Die vollständige Warnung lautet:

Image wurde als ausführbare Datei gelinkt, aber mit der Erweiterung .DLL bzw. .BPL

-wdee

Public Symbol in mehreren Bibliotheken definiert

Aus

Diese Warnung wird angezeigt, wenn in zwei verschiedenen Bibliotheken doppelte Symbole vorhanden sind.

Die vollständigen Warnungen lauten:

Öffentliches Symbol 'symbol' sowohl in Bibliotheksmodul 'module1' als auch 'module2' definiert
Öffentliches Symbol 'symbol' sowohl in Modul 'module1' als auch 'module2' definiert

-wdup
-wdpl

Public Symbol in mehreren Objektdateien definiert

Ein

Abschnitt nicht gefunden

Ein

Diese Warnung tritt auf, wenn ein benannter Abschnitt nicht gefunden wird.

Die vollständige Warnung lautet:

Abschnitt 'section' nicht gefunden

-wsnf

Entfernen von Adressverschiebungs-Informationen aus der DLL könnte zu Fehlfunktionen führen

Ein

Diese Warnung tritt auf, wenn die Option Basisadresse beim Linken einer DLL festgelegt ist.

Die vollständige Warnung lautet:

Entfernen von Adressverschiebungs-Informationen aus der DLL könnte zu Fehlfunktionen der DLL führen

-wsrd

DLL kann nicht geladen werden

Ein

Diese Warnung tritt auf, wenn die Option Basisadresse beim Linken einer DLL festgelegt ist. In fast allen Fällen verhindert dieser Fehler, dass die Anwendung ausgeführt wird.

-wuld

Inkrementelles Linken kann nicht ausgeführt werden

Ein

Diese Warnung erscheint, wenn das inkrementelle Linken fehlschlägt. Der Linker hat einen Fehler in einer seiner Statusdateien (Projektname.IL*) gefunden. Daher wurde ein vollständiger Link-Vorgang gestartet und neue Statusdateien erstellt.

Die vollständige Warnung lautet:

Inkrementelles Linken kann nicht ausgeführt werden – vollständiges Linken wird ausgeführt

-wrty

Siehe auch