|
|
| MS-Visual-C++: wxWidgets verwenden |
|
1. Zuerst
müssen Sie sich hierbei den neuesten Quellcode von wxWidgets
von http://wxwidgets.org/downloads/
(wählen Sie wxMSW)
herunterladen. Doppelklicken Sie die ausführbare
Installer-Datei
und wählen Sie ein Verzeichnis aus, wo Sie die Dateien
hinkopieren
wollen. Ich habe hierbei bspw. das Verzeichnis C:\wxWidgets-2.8.10
verwendet.
![]() 2. Starten Sie jetzt Visual C++ 2008 Express Edition und wählen Sie im Menü Datei * Öffnen * Projekt/Projektmappe (bzw. schneller mit SHIFT+STRG+O) aus. Wählen Sie jetzt die Projektdatei mit der Endung *.dsw aus. Sie finden diese Projektdatei im Verzeichnis C:\wxWidgets-2.8.10\build\msw. Natürlich vorrausgesetzt, Sie haben im Schritt 1 als Verzeichnis C:\wxWidgets-2.8.10 gewählt. Sie finden im Verzeichnis zwei Projektdateien vor. Einmal wx.dsw und wx_dll.dsw. Mit wx.dsw erstellen Sie die statische Bibliothek und mit wx_dll.dsw die dynamische Bibliothek (kurz DLL). Wählen Sie hier zunächst mit wx.dsw die statische Version aus. Das Erstellen der DLL-Version funktioniert im Grunde genauso. ![]() 3. Jetzt erfolgt ein Hinweis, dass die Projekte mit einer früheren Version von Visual-C++ erstellt wurden und eine Abfrage, ob Sie diese gleich konvertieren und öffnen wollen. Klicken Sie hierbei gleich auf Ja, alle, woraufhin alle Projekte in Visual C++ 2008 konvertiert und geladen werden. Anschließend finden Sie im Projektmappen-Editor die Projektmappe wx mit 20 Projekten wieder. ![]() 4. Als nächstes müssen Sie Version auswählen die Sie bauen wollen. Wählen Sie hierfür zunächst Debug aus. Sie hierbei außerdem auch gleich, dass das Projekt mehr als nur die üblichen Debug- und Release-Versionen anbietet, welche Sie erstellen können. ![]() 5. Klicken Sie jetzt mit der rechten Maustaste auf die Projektmappe und wählen Sie im Kontextmenü Projektmappe erstellen aus. Dies kann jetzt eine zeitlang dauern bis die Debug-Version fertiggebaut wurde. ![]() 6. Jetzt brauchen wir auch noch eine Release-Version. Wählen Sie also Release bei der Projektmappenkonfiguration aus und wiederholen Sie den Schritt 5 erneut. Auch das bauen der Release-Version kann ein wenig Zeit in anspruch nehmen. ![]() 7. Das wars auch schon mit dem Bauen der statischen Bibliothek von wxWidgets. Die fertigen Bibliotheken finden Sie jetzt (vorrausgesetzt Sie haben wxWidgets ins Verzeichnis C:\wxWidgets-2.8.10 kopiert) in C:\wxWidgets-2.8.10\lib\vc_lib wieder. Hinweis: Wollen Sie jetzt auch noch die dynamische Bibliothek (DLL) bauen, müssen Sie nur im Schritt 2 die Projektdatei wx_dll.dsw auswählen und die Schritte 3 bis 6 wiederholen. 8. Nachdem Sie jetzt wxWidgets für VC++ selbst "gebaut" haben, können Sie anfangen, Anwendungen mit wxWidgets zu erstellen. Da hier für das Verzeichnis von wxWidgets C:\wxWidgets-2.8.10 verwendet wurde, finden Sie dort im Verzeichnis C:\wxWidgets-2.8.10\include die Headerdateien und im Verzeichnis C:\wxWidgets-2.8.10\lib die Bibliotheken. Außerdem benötigen Sie noch die Headerdatei setup.h, die Sie im Verzeichnis C:\wxWidgets-2.8.10\lib\vc_lib\msw (für die Release-Version) bzw. C:\wxWidgets-2.8.10\lib\vc_lib\mswd (für die Debug-Version) vorfinden und dem Compiler auch mitteilen müssen, damit es mit der Übersetzung klappt. Voraussetzung, dass Sie Anwendungen mit wxWidgets erstellen können, ist, dass Sie ein neuen Projekt wie im Abschnitt Mehrere Quelldateien- und Headerdateien übersetzen gezeigt wurde, erstellen. Hier soll zum Beispiel das Listing vom Kapitel 10.3.2 mit base.cpp und base.h übersetzt werden. Außerdem soll eine Release-Version erstellt werden. Wenn Sie ein neues Projekt erstellt haben und die beiden Quellcodes eingetippt (oder per Copy & Paste eingefügt) haben, müssen Sie die Eigenschaften für das Projekt einstellen, damit der Compiler den Pfad zu den include-Dateien und der Linker den Pfad zur Bibliothek von Boost kennt. Wählen Sie jetzt auf der linken Seite den Reiter Eigenschaften-Manager aus. Klicken Sie jetzt die entsprechende Version (Debug oder Release) des entsprechenden Projekts mit der rechten Maustaste an, wovon Sie die Eigenschaften bearbeiten wollen. ![]() 9. Im sich öffnenen Dialog-Fenster für die Eigenschaften des Projekts wollen wir zuerst den Pfad zur Headerdatei von wxWidgets für den Compiler auswählen. Dies können Sie über Allgemeine Eigenschaften * C/C++ * Allgemein im Textfeld Zusätzliche Includeverzeichnisse machen. Klicken Sie hierbei rechts ins Textfeld, können Sie über eine Schaltfläche mit drei Punkten den Dialog Zusätzliche Includeverzeichnisse öffnen, wo Sie das Verzeichnis auswählen können (hier C:\wxWidgets-2.8.10\include). Der Pfad hängt natürlich davon ab, welchen Pfad Sie im Schritt 1 beim installieren angegeben haben. Außerdem benötigen Sie noch die Headerdatei setup.h, die Sie im Verzeichnis C:\wxWidgets-2.8.10\lib\vc_lib\msw (für die Release-Version) bzw. C:\wxWidgets-2.8.10\lib\vc_lib\mswd (für die Debug-Version) vorfinden und dem Compiler auch mitteilen müssen, damit es mit der Übersetzung klappt. ![]() 10. Was für den Compiler die Includedateien sind, sind für den Linker die Bibliotheken. Den Pfad hierzu können Sie über Allgemeine Eigenschaften * Linker * Allgemein im Textfeld Zusätzliche Bibliotheksverzeichnisse machen. Klicken Sie hierbei rechts ins Textfeld, können Sie über eine Schaltfläche mit drei Punkten den Dialog Zusätzliche Bibliotheksverzeichnisse öffnen, wo Sie das Verzeichnis auswählen können (hier C:\wxWidgets-2.8.10\lib\vc_lib). Der Pfad hängt natürlich auch hier davon ab, welchen Pfad Sie im Schritt 1 beim installieren angegeben haben. ![]() 11. wxmsw28d_adv.lib müssen Sie in Allgemeine Eigenschaften * Linker * Eingabe im Textfeld Zusätzliche Abhängigkeiten noch folgende Bibliotheken hinzufügen (vorausgesetzt, Sie verwenden eine Release-Version; Debug-Versionen haben ein d am Ende des Bibliotheksnamen (bspw. wxmsw28_cored.lib)): wxmsw28_core.lib wxbase28.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib winmm.lib comctl32.lib rpcrt4.lib wsock32.lib odbc32.lib Hinweis: Beim Beispiel vom Kapitel 10.3.14 aus dem Buch müssen Sie noch zusätzlich die Bibliothek wxmsw28d_adv.lib hinzufügen. Tipp: Wenn Sie mal eine Fehlermeldung erhalten, dass der Linker ein bestimmte Bibliothek nicht findet, können Sie sich ja die mitgelieferten Beispiele von wxWidgets im Ordern samples ansehen. Hier finden Sie auch eine Projektdatei für Visual C++, sodass Sie sich über die Eigenschaftenseite alle nötigen Bibliotheken ermitteln können. ![]() 12. Wenn Sie mit den Eigenschaften des Projekts fertig sind, können Sie auch diesen Dialog mit der Schaltfläche Ok bestätigen und das Projekt wie gewöhnlich über das Menü Erstellen mit Projektname erstellen übersetzen und anschließend mit Debuggen * Starten ohne Debugging (bzw. STRG+F5) ausführen. ![]() Das Programm bei der Ausführung: ![]() |












