Welche Libs bei wxWidgets einbinden?
-
Hallo,
ich wollte mit der Programmierung mit wxWidgets anfangen. Ich hab alles ganz genau aus dem Buch abgetippt ^^
Der Quellcode:#ifndef BASE_H #define BASE_H class HelloWeltApp : public wxApp { public: virtual bool OnInit(); }; class BasicFrame : public wxFrame { public: BasicFrame (const wxChar *title, int xpos, int ypos, int width, int height); ~BasicFrame(); }; #endif
Und base.cpp:
#include <wx/wx.h> #include "base.h" IMPLEMENT_APP(HelloWeltApp) bool HelloWeltApp::OnInit() { BasicFrame *frame = new BasicFrame( wxT("Hallo Welt"), 50, 50, 450, 300); frame->Show(TRUE); SetTopWindow(frame); return TRUE; } BasicFrame::BasicFrame( const wxChar *title, int xpos, int ypos, int width, int height) : wxFrame( (wxFrame *) NULL, -1, title, wxPoint(xpos, ypos), wxSize(width, height)) {} BasicFrame::~BasicFrame() {}
Das Compilen geht gut, beim Linken kommen allerdings 9 "Nicht aufgelöste Verweise". Als zusätzliche Libs hab ich die hier angegeben:
"comctl32.lib rpcrt4.lib winmm.lib advapi32.lib wsock32.lib wxmsw28u_core.lib wxbase28u.lib"Brauch ich da noch mehr, oder reichen die?
Danke schon mal für Hilfe
Gruß pyromania
-
Müsstest du mal posten welche Symbole er noch vermisst.
Es kann sein das du noch wxLibs hinzulinken musst, und auch einige windows varianten fehlen imho noch.
comctl32 shell32 etc. z.b.
-
Hallo,
das liefert mir die Ausgabe:
LINK : C:\Dokumente und Einstellungen\pyro\Eigene Dateien\Visual Studio 2005\Projects\wxTest\Debug\wxTest.exe wurde nicht gefunden oder beim letzten inkrementellen Verknüpfungsvorgang nicht erstellt; vollständige Verknüpfung wird durchgeführt. base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall wxAppConsole::OnAssertFailure(wchar_t const *,int,wchar_t const *,wchar_t const *,wchar_t const *)" (?OnAssertFailure@wxAppConsole@@UAEXPB_WH000@Z)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall wxAppConsole::OnAssert(wchar_t const *,int,wchar_t const *,wchar_t const *)" (?OnAssert@wxAppConsole@@UAEXPB_WH00@Z)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""protected: static class wxAppConsole * wxAppConsole::ms_appInstance" (?ms_appInstance@wxAppConsole@@1PAV1@A)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""wchar_t const * const wxFrameNameStr" (?wxFrameNameStr@@3QB_WB)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static unsigned int const wxStringBase::npos" (?npos@wxStringBase@@2IB)". base.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""void __cdecl wxOnAssert(wchar_t const *,int,char const *,wchar_t const *,wchar_t const *)" (?wxOnAssert@@YAXPB_WHPBD00@Z)" in Funktion ""public: __thiscall wxStringBase::wxStringBase(class wxStringBase const &)" (??0wxStringBase@@QAE@ABV0@@Z)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""wchar_t const * const wxEmptyString" (?wxEmptyString@@3PB_WB)". base.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""protected: static class wxAppConsole * (__cdecl* wxAppConsole::ms_appInitFn)(void)" (?ms_appInitFn@wxAppConsole@@1P6APAV1@XZA)".
-
Hm, also dann fehlt evtl. noch eine wxLib. Musst du evtl. mal Try & Error mit denen machen wo es sinn ergibt.
Falls du Sockets benutzt, ists noch die wxNet library, aber dagegen sprechen eigentlich die Linkermeldungen.Es kann aber auch an der Reihenfolge liegen, versuch mal die base vor der core zu linken.
-
Hoi,
hab nu wxPack, und es geht alles ^^
also vielen Dank für deine Hilfe