[gelöst] Visual Studio C++ Fehler C1047 von gerade selbst erzeugter Datei



  • Hallo,

    ich hab ein Problem. Wenn ich meine Anwendung Debug compeliere, klappt alles Problemlos. Wenn ich allerdings Release compeliere, dann bekomme ich ein komisches Ereignis.

    ------ Neues Erstellen gestartet: Projekt: XXX, Konfiguration: Release Win32 ------
    Die Zwischen- und Ausgabedateien für das Projekt "XXX" mit der Konfiguration "Release|Win32" werden gelöscht.
    Kompilieren...
    FrameMain.cpp
    Verknüpfen...
    fatal error C1047: Die Objekt- oder Bibliotheksdatei ".\Release\FrameMain.obj" wurde mit einem älteren Compiler als andere Objekte erstellt. Erstellen Sie die alten Objekte und Bibliotheken neu.
    LINK : fatal error LNK1257: Fehler bei Codegenerierung.
    Das Buildprotokoll wurde unter "file://u:\XXX\Release\BuildLog.htm" gespeichert.
    XXX - 1 Fehler, 0 Warnung(en)
    

    Also wenn ich das richtig verstehe, dann nimmt er erst die FrameMain.cpp und übersetzt die für den Linker, und dann sagt er, dass die Datei mit einem zu alten Compiler übersetzt wurde? Aber er hat die Datei doch gerade selbst neu übersetzt?!?!?! Versteh ich nicht.

    Ich hab auch schon im Batch mehrfach "bereinigt" und "Neu erstellt". Hab geschaut, dass die Datei "FrameMain.obj" wirklich nicht mehr vorhanden ist vor dem compelieren. Vergebens. Ich bekomme immer wieder die gleiche Meldung.

    Erbitte Hilfe.
    Danke,
    Stefan



  • Hm, werden im Release-Build vielleicht irgendwelche libs gelinkt, die es im Debug-Build nicht gibt? Irgendwelche Relikte in den Projektsettings?



  • Ich hab jetzt alle libes nochmal durchcompeliert...und siehe da, der Fehler ist weg. Man man man, was das jetzt wohl wieder war. Ich hab meinen Compiler ewig nicht erneuert. Wie da ne alte Version reingekommen ist, weiß ich jetzt auch nicht.

    Danke.


Anmelden zum Antworten