GTK/ Vorbereitung

Aus Wikibooks

< GTK
Wechseln zu: Navigation, Suche
Nuvola apps bookcase.svg Programmierung Nuvola apps bookcase 1.svg GTK

GTK muss wie jedes andere Programm erst einmal eingerichtet werden, bevor man es verwenden kann. Auf Unix-artigen Betriebssystem ist die Einrichtung typischerweise einfach (verglichen mit Windows). Es folgen einige Anweisungen zur einfachen Einrichtung.

Inhaltsverzeichnis

[Bearbeiten] Einrichtung auf Windows

Die Installation von GTK selbst ist unter Windows nicht so tragisch, denn dafür gibt es fast immer in einer kurzen Zeit nach den Releases fertige Binärpakete, sogar hübsch in Installern verpackt. Das eigentliche Hauptproblem ist eher die Einrichtung eines Compilers. Da gibt es eine Vielzahl von Lösungen: Cygwin, MinGW, Watcom und noch einige mehr. Die eigentliche Anwendung macht am Ende keinen Unterschied mehr. Hier wird die Installation am Beispiel des Visual C++-Compilers von Microsoft beschrieben, der wegen seiner vergleichsweise einfachen Installation bevorzugt wurde.

[Bearbeiten] Schritt 1: Compiler downloaden und installieren

Der Visual C++-Compiler von Microsoft ist seit einiger Zeit zusammen mit einer etwas eingeschränkten Entwicklungsumgebung kostenlos bei MSDN erhältlich.

Nach dem Download ist es beim Setup-Programm nur notwendig, den Compiler selbst zu installieren, die Dokumentation oder der SQL-Server werden nicht benötigt. Die Registrierung kann übersprungen werden, sie bezieht sich nur auf die Entwicklungsumgebung.

[Bearbeiten] Schritt 2: Installieren der Pakete

Danach musst du dem Compiler GTK bekannt machen. Dies ist der eigentlich schwierigste Schritt, denn hier muss eine Vielzahl von Paketen installiert werden. Diese Aufgabe ist aber besonders GTK-Einsteigern nicht zuzumuten, darum haben wir diese endlose Sammlung von Paketen in ein einziges zusammengefasst. Du kannst es dir herunterladen und in <Installationsverzeichnis>/VC entpacken.

[Bearbeiten] Schritt 3: Kompilieren eines Programms

In diesem Buch wird generell die Syntax für Unix-artige Systeme benutzt. Grundsätzlich unterscheidet sie sich allerdings nicht stark von der Syntax für Windows.

Eine ziemlich einfache Methode, um ein Programm für GTK zu kompilieren, ist die Angabe der folgenden Kommandos auf einer Windows-Eingabeaufforderung:

call "%VS80COMNTOOLS%\..\..\VC\VCVARSALL.BAT"
cl -I"%VCINSTALLDIR%/include/gtk-2.0" -I"%VCINSTALLDIR%/include/cairo" -I"%VCINSTALLDIR%/include/glib-2.0"
-I"%VCINSTALLDIR%/lib/glib-2.0/include" -I"%VCINSTALLDIR%/include/pango-1.0" -I"%VCINSTALLDIR%/lib/gtk-2.0/include"
-I"%VCINSTALLDIR%/include/atk-1.0" /c <Liste der .c(pp)-Dateien>
link /out:<EXE-Name>.exe <Liste der .obj-Dateien> gtk-win32-2.0.lib gdk-win32-2.0.lib gdk_pixbuf-2.0.lib gmodule-2.0.lib
gobject-2.0.lib gthread-2.0.lib glib-2.0.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangoft2-1.0.lib pangowin32-1.0.lib intl.lib

Dies ist eine verdammt lange Eingabe, und dies zeigt auch, wie schwer es anfänglich ist, für Windows zu kompilieren - und das trifft oft auch auf andere Bibliotheken zu. Aber sie kann generell für fast jeden Zweck benutzt werden, und damit belassen wir es dabei. Lass dich davon nicht abschrecken - dies ist der letzte Stolperstein zum ersten GTK-Programm!

[Bearbeiten] Einrichtung auf Unix-artigen Betriebssystemen

Bei der Verwendung einer paketbasierten Distribution ist die Einrichtung typischerweise ziemlich einfach: zusätzlich zu den GTK-Bibliotheken, die sich in Paketen wie gtk2 befinden, muss man je nach Distribution noch ein anderes Paket (meist gtk2-devel oder bei Debian/Ubuntu libgtk2.0-dev) installieren. Dadurch werden die Include-Dateien installiert, die, wie wohl jeder fortgeschrittene C-Programmierer weiß, benötigt werden, um Bibliotheken in einem Programm benutzen zu können.

Auch unter Linux muss man einen Haufen Bibliotheken einbinden:

gcc -I /usr/include/gtk-2.0/ -I /usr/include/glib-2.0/ -I /usr/include/glib-2.0/gobject/ -I /usr/include/glib-2.0/glib/ -I /usr/lib/glib-2.0/include/ -I /usr/lib/gtk-2.0/include/ -I /usr/include/pango-1.0/ -I /usr/include/cairo/ -I /usr/include/atk-1.0/ -lglib-2.0 -lgobject-2.0 -lgthread-2.0  -lgmodule-2.0 -latk-1.0 -lpango-1.0 -lcairo -lgtk-x11-2.0 -o <Ausgabedateiname> <Liste der .c(pp)-Dateien>


Unter älteren SuSE Versionen muss die Zeile wie folgt geändert werden, da SuSE die Bibliotheken an anderer Stelle ablegt:

gcc -I/opt/gnome/include/gtk-2.0 -I/opt/gnome/include/glib-2.0 -I/opt/gnome/include/glib-2.0/gobject -I/opt/gnome/include/glib-2.0/glib
-I/opt/gnome/lib/glib-2.0/include -I/opt/gnome/lib/gtk-2.0/include -I/opt/gnome/include/pango-1.0 -I/opt/gnome/include/cairo
-I/opt/gnome/include/atk-1.0 -L/opt/gnome/lib -lglib-2.0 -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0
-latk-1.0 -lpango-1.0 -lcairo -lgtk-x11-2.0 -o <Ausgabedateiname> <Liste der .c(pp)-Dateien>
Persönliche Werkzeuge