komischer Linkerfehler



  • Hallo.

    Ich habe das Problem, dass anscheinend Symbole mehrfach definiert sind. Wie es aussieht handelt es sich allerding nicht um Funktionen oder Methoden, sondern um Attribute oder globale Variablen.

    Wie kann ich den Fehler korrigieren?

    XManager.lib(XComManager.obj) : error LNK2005: "char * filename" (?filename@@3PADA) bereits in main.obj definiert
    XManager.lib(XClassLoader.obj) : error LNK2005: "char * filename" (?filename@@3PADA) bereits in main.obj definiert
    XManager.lib(XComManager.obj) : warning LNK4006: '"char * filename" (?filename@@3PADA)' bereits in 'main.obj' definiert; zweite Definition wird ignoriert
    XManager.lib(XClassLoader.obj) : warning LNK4006: '"char * filename" (?filename@@3PADA)' bereits in 'main.obj' definiert; zweite Definition wird ignoriert
    Bibliothek 'Release/testX.lib' und Objekt 'Release/testX.exp' wird erstellt
    Release/testX.exe : fatal error LNK1169: Ein oder mehrere mehrfach definierte Symbole gefunden



  • Sieht so aus, als wenn du die Variablen mehrfach definiertest.
    Also in unterschiedlichen Übersetzungseinheiten diesselbe Definition?
    Das lässt der Linker nicht durchgehen, nur wiederholte Deklarationen sind erlaubt.

    Hat sich vielleicht in einer Headerdatei eine Variablendefinition eingeschmuggelt?


Anmelden zum Antworten