MSVC2010: Unresolved externals bei abhängigen Projekten



  • Hallo zusammen, ich hab folgendes Szenario im MSVC2010:

    Projekt "dep", erstellt als leeres Projekt. Einzige Änderung war, dass es nicht als Application sondern als statische Bibliothek gebaut werden sollte. Inhalt: foo.cpp, mit int

    foo() { return 5; }
    

    Projekt "main", erstellt als leeres Projekt. Einzige Änderung war, dass es von "dep" abhängig sein soll. Inhalt main.cpp, main-Methode referenziert int foo (der Einfachheit halber die Funktion in der main.cpp deklariert).

    Beim build wäre ich jetzt davon ausgegangen, dass, wenn main schon von dep abhängt, das auch mit dazu gelinkt würde. Wird es aber nicht, es kommt die unresolved external zu foo.

    Klingt jetzt trivial, aber ich find die Lösung auch mit google nicht wirklich. Kann mir wer auf die Sprünge helfen?



  • Hast Du in den Project dependies auch eingetragen, dass "main" von "dep" abhängt? Außerdem gibt es in den Projekteinstellungen bie Linker noch noch eine Option "Link Library Dependencies", die auf "yes" stehen sollte. Ggf. kannst du überprüfen ob die Abhängigkeit "dep.lib" (wenn diese denn so heißt) in der Command Line des Linkers auftaucht.



  • Hat sich erledigt. Seit MSVC 2010 sind die "Project dependencies" nurnoch dafür zuständig, die Buildreihenfolge einzustellen. Das Linken wird in den Projekteinstellungen über "Frameworks & References" erledigt.


Anmelden zum Antworten