GUI mit wxWidgets -> Linker Error



  • Hiho allerseits,

    ich wollte mal mein Wissen im Bereich GUI vertiefen und wollte deshalb mein erstes Programm mit wx schreiben.

    Hier der Code:

    #include <wx/wxprec.h>
    
    class ButtonFrame : public wxFrame
    {
    public:
    	ButtonFrame();
    private:
    };
    
    class MyWindow : public wxApp
    {
    public:
    	virtual bool OnInit ();
    };
    
    ButtonFrame::ButtonFrame() 
    			: wxFrame( (wxFrame *) NULL, wxID_ANY, _T("GUI"))
    {
    }
    
    bool MyWindow::OnInit ()
    {
    	ButtonFrame* btFrame;
    	btFrame = new ButtonFrame();
    	btFrame->Show(true);
    	SetTopWindow(btFrame);
    	delete btFrame;
    	return (true);
    }
    
    int main (int argc, char* argv[])
    {
    	return (0);
    }
    

    Wie man schon in der Main sieht, passiert da nicht sonderlich viel. Aber mein Problem ist, wenn ich das durch den Linker jage bekomme ich immer 169 Fehlermeldungen.
    Alle nach dem selben Muster

    error LNK2001: Nichtaufgeloestes externes Symbol "protected: virtual void * __thiscall wxFrame::GetDefaultIcon(void)const " (?GetDefaultIcon@wxFrame@@MBEPAXXZ)
    

    Meine IDE ist das MS Visual Studio 6 SP4. Ich weiss im Moment nicht wirklich weiter. Die Samples die mitgeliefert wurden kann ich ohne Probleme kompilieren.

    Ausserdem hab ich meinen Quelltext mit einem Sample verglichen, aber ich konnte keine grundsätzlichen Unterschiede herausfiltern.

    MfG

    Vic



  • Also ein Link Error ist ja auch kein Compile Error. So, ergo ist dein Sourcecode erstmal korrekt compiliert, da bringt es dir nichts den Source zu vergleichen. Der Fehler liegt in den Projekteinstellungen: es fehlen die Libraries!!! Die mußt du deinem Linker mitteilen, damit er deinen compilierten Code mit der wx-Library linken kann.

    Also, die DLLs und LIBs zu deinem Projekt hinzufügen oder in den globalen Optionsmenu das wx-Library-Verzeichnis bekannt geben.



  • wxWidgets sucks.



  • Danke für den Hinweis mit den Bibiotheken,
    ich habe diese jetzt bei den Projekteinstellungen eingetragen, aber es hat sich nichts getan.
    Anscheinend ist mein Kenntnisstand über Bibliotheken wohl doch nicht so ausgereift, wie ich es erhofft habe.

    Kann mir das jemand freundlicher Weise erklären, am besten auch anhand dieses Problems?

    MfG

    Vic

    PS.:

    Auf Antworten wie die von ++++++++++++++++++ kann die Community gänzlich verzichten.
    Ich respektiere wohl die Meinung anderer, wenn sie sagen, sie mögen XY nicht, WEIL...
    Solche Trollpostings könnt ihr im Off-Topic Foren verfassen.


Anmelden zum Antworten