Probleme mit DLL-Komplierung von wxWidgets
-
Ich habe wxWidgets als DLL im Unicode erstellt.
Mein Problem ist wenn an irgendeiner Stelle (egal ob in einer eigenen DLL, oder in den als DLL kompilierten wxWidgets-Klassen) ein wxString benutzt oder erstellt wird erhalte ich folgende Fehlermeldung
xxxClass.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""wchar_t const * const wxEmptyString" (?wxEmptyString@@3PB_WB)". 1>xxxClass.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""wchar_t const * const wxEmptyString" (?wxEmptyString@@3PB_WB)". 1>xxxClass.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static unsigned int const wxStringBase::npos" (?npos@wxStringBase@@2IB)". 1>U:\SDKs\nmpSDK2\\dll\nmpSDK2_d.dll : fatal error LNK1120: 2 nicht aufgelöste externe Verweise.
Liberys habe ich alle die wxWidgets mitliefert eingebunden. Auch die jeweils richtigen unter Debug und Release. Die DLL´s liegen auch im richtigen Verzeichnis und werden gefunden.
Des weitern ist wxWidgets und das Project mit der selben Common Language Runtime-Eigenschaft kompiliert.
Erstellt werden soll ein "Dynamische Bibliothek (.dll)"
Als Laufzeitbibliothek ist "Multithreaded-Debug-DLL (/MDd)" bei Debug angegeben...Hoffe mal die ersten Angaben hier reichen aus damit jemand eine Idee hat. Bin für jeden Tip dankbar.
Mfg
Ollow
-
So habe das Problem gefunden, die Lösung ist jetzt ganz simple wenn man es weiß:
Es lag nur daran das ich den Präprozessorflag 'WXUSINGDLL' nicht gesetzt hatte.
Dies mit eingefügt und alle arbeitet so wie gewünscht...