Präprozessordefinition für Visual C++?



  • hackbert schrieb:

    Offensichtlich wird die aber nicht mitgelinkt und deshalb bekomme ich das unaufgelöste externe Symbol.

    Oder die Deklaration der Methoden unterscheidet sich von der Definition - zB ein const vergessen?



  • Shade Of Mine schrieb:

    Oder die Deklaration der Methoden unterscheidet sich von der Definition - zB ein const vergessen?

    Definitiv nicht, kompiliert mit mingw ja perfekt!

    groovemaster2002 schrieb:

    Noch ein Tipp, schalte im VC++ das Benutzen von vorkompilierten Headern aus

    Wie geht das denn? /Yu"stdafx.h" habe ich ja schonmal entfernt.

    Und was bringen vorkompilierte Headerdateien eigentlich?



  • hackbert schrieb:

    groovemaster2002 schrieb:

    Noch ein Tipp, schalte im VC++ das Benutzen von vorkompilierten Headern aus

    Wie geht das denn?

    Das kann man in den Projekteinstellungen verändern. Welche VC++ Version benutzt du denn?



  • Visual C++ 6.0



  • Bei Version 6.0 kann ich dir leider nicht helfen, da ich es nicht mehr auf dem Rechner hab. Musst halt mal alles in den Projekteinstellungen durchschauen. Da gibts irgendwo die Einstellung für vorkompilierte Header.



  • Hallo,

    vorkompilierte Header ausschalten:

    Projekt-Einstellungen, Register C/C++, Kategorie "Vorkompilierte Header"-> nicht verwenden.

    MfG



  • Das bewirkt das gleiche wie das Entfernen von /Yu"stdafx.h". Ich bekomme dann immernoch ein unaufgelöstes externes Symbol. Kann das vielleicht daran liegen, dass die zugehörige Codedatei nicht im selben Verzeichnis liegt?



  • Unaufgelöstes externe Symbole entstehen immer dann, wenn Funktionen deklariert, aber nicht definiert sind. Schau dir das unaufgelöste externe Symbol an, und prüfe ob es in einer eingebundenen Übersetzungseinheit definiert bzw. in einer mitgelinkten Lib vorhanden ist.



  • Alle Libs und auch die zugehörige Codedatei sind im Projekt eingebunden. Anscheinend werden diese aus irgendeinem Grund nicht mitgelinkt. Meine Frage war: kann VC++ nur Dateien mitlinken, die im selben Verzeichnis oder einem Unterverzeichnis des Projekts liegen? die entsprechende Codedatei liegt nämlich eine Verzeichnisebene höher...



  • Libs können auf unterschiedliche Weise ins Projekt eingebunden werden.
    1. du fügst sie direkt zu den Projektdateien hinzu
    2. du gibst sie bei den Projekteinstellungen an (irgendwo bei den Linker Einstellungen). Dann musst du allerdings in den Verzeichniseinstellungen (das sind allgemeine VC++ Einstellungen also nicht projektspezifisch) die zu durchsuchenden Pfade angeben.


Anmelden zum Antworten