Compilateur Pascal.
Free Pascal.
Mandrake.
Avec un urpmi bien configuré () :
 #urpmi fpc
et le tour est joué.
Ou pour avoir la dernière version (au mois de mars 2005, la 1.9.8), il faut télécharger sur le site http://www.freepascal.org le fichier codice_1 qu'on installe classiquement :
 #rpm --install fpc-1.9.8-0.i586.rpm
Kylix.
"<à compléter>"
En-têtes GTK2 pour le langage Pascal.
Free Pascal version 1.0 ou Kylix.
L'archive codice_2 est à télécharger sur le site Gtk2 for Pascal.
Il faut décompresser ensuite l'archive, par exemple dans le répertoire où vous placez vos sources :
 $tar -xvzf gtk2forpascal-1.0.7.tgz
Cela créé un sous-répertoire codice_3 avec tout ce qu'il faut dedans.
Free Pascal version 2.0 (1.9.x).
Si vous avez installé la version 2.0 du compilateur Free Pascal (ou les versions RC, 1.9.x), vous avez déjà ces en-têtes. Mais elles sont précompilés pour fonctionner avec les bibliothèques Gtk+ 2.0, pas 2.2, 2.4 ou 2.6 qui apportent pas mal de nouveautés intéressantes.
En attendant que l'équipe de Free Pascal le fasse, pour recompiler ces unités en version 2.6, la dernière disponible en mars 2005, vous devez télécharger les sources du compilateur Free Pascal, exemple pour Mandrake, le fichier codice_4.
 #rpm --install fpc-1.9.8-0.src.rpm
 #cd /usr/src/RPM/SOURCES
 #tar -xvzf fpc-1.9.8-src.tar.gz
 #cd packages/extra/gtk2
Il faut mettre à jour le fichier codice_5 car il y a 3 unités qui ne passent pas. Mettez en commentaires les lignes :
 // new GtkFileChooser Widget
Puis on poursuit :
 #make OPT=-dGTK2_6
 #cd units/i386-linux/
 #cp * /usr/lib/fpc/1.9.8/units/i386-linux/gtk2
Nos unités sont disponibles.
Bibliothèques GTK+.
Sur un Linux où un Gnome récent est installé, les bibliothèques GTK+ version 2 seront installés.
Vous pouvez vérifier quelle version est installée sur votre système à l'aide de la ligne de commande suivante : 
 $pkg-config --modversion gtk+-2.0
S'il vous répond, un truc du style :
 Package gtk+-2.0 was not found in the pkg-config search path.
 Perhaps you should add the directory containing `gtk+-2.0.pc'
 to the PKG_CONFIG_PATH environment variable
 No package 'gtk+-2.0' found
Ce n'est pas bon signe...
Sur une Mandrake.
 $urpmi gtk+2.0
 Tout est déjà installé
 $urpmi libgtk+2.0_0-devel
 Pour satisfaire les dépendances, les paquetages suivants vont être installés (10 Mo):
 libatk1.0_0-devel-1.4.1-2mdk.i586
 libgdk_pixbuf2.0_0-devel-2.2.4-10.1.100mdk.i586
 libgtk+2.0_0-devel-2.2.4-10.1.100mdk.i586
 libpango1.0_0-devel-1.2.5-3mdk.i586
 Est-ce correct ? (O/n)
 # pkg-config --modversion gtk+-2.0
 2.2.4
Autre solution.
Taper en root « locate *.pc » pour trouver le répertoire codice_6.
Vérifier si le fichier "gtk+-2.0" est présent ! Si non : installer codice_7 et codice_8. Et il est conseillé d'ajouter : codice_9, codice_10 et codice_11.
Compilation.
Par le biais des mises-à-jour automatiques il se peut que vous ayez une version de Gtk+ assez ancienne. Par exemple sur une Mandrake 10.0, pas si vieille, c'est la version 2.2.4 de Gtk+ qui est disponible. Pour posséder une version récente, au mois de mars 2005, la 2.6.2, on peut tout recompiler.
Il faut télécharger sur le site http://www.gtk.org/ les fichiers :
Puis dans l'ordre, on compile la GLib :
 $tar -xvyf gtk+-2.6.2.tar.bz2
 $cd glib+-2.6.2
 $./configure --prefix=/usr
 $make
 #make install [# indique de passer en « root »]
 $cd ..
Au tour de l'Atk :
 $tar -xvyf atk-1.9.0.tar.bz2
 $cd atk-1.9.0
 $./configure --prefix=/usr
 $make
 #make install
 $cd ..
De Pango :
 $tar -xvyf pango-1.8.0.tar.bz2
 $cd pango-1.8.0
 $./configure --prefix=/usr --sysconfdir=/etc
 $make
 #make install
 $cd ..
Et enfin de Gtk+ :
 $tar -xvyf gtk+-2.6.2.tar.bz2
 $cd gtk+-2.6.2
 $./configure --prefix=/usr
 $make
 #make install
 #ldconfig
Et c'est tout.

Programmation GTK2 en Pascal/Une application minimale

Avant-propos.
Cette application GTK minimale va nous permettre de tester l'installation des différents logiciels nécessaires.
L'application.
Elle est simple et minimale. De plus elle ne fait rien. Voilà le fichier codice_1 :
 program gtk000;
 uses gtk2;
 begin
 // Initialisation de GTK+ 
 gtk_init(@argc, @argv); 
 end.
La compilation sous Linux.
Avec Free Pascal version 1.0.x.
À la première compilation, il convient de générer le fichier des ressources pour GTK+ codice_2. Ce fichier est utilisé dans l'édition des liens de chaque programme GTK+. 
Cela se passe dans le répertoire codice_3 où se trouvent les entêtes GTK+, il faut lancer le script :
 $cd gtk2
 $./mk_gtk2fpc_link_res.sh
On ne doit relancer ce script que si l'on modifie les en-têtes, lors d'une nouvelle version par exemple.
Pour la compilation, proprement dite, le mieux est d'écrire un script. Dans le cas de figure où on a les sources dans le répertoire où on a décompacté les en-têtes Gtk+, soit codice_4 notre fichier de script :
 #!/bin/bash
 set -e
 set -x
 $Unites="-Fugtk2/gtk+/gtk -Fugtk2/glib -Fugtk2/atk -Fugtk2/pango -Fugtk2/gtk+/gdk-pixbuf -Fugtk2/gtk+/gdk" 
 ppc386 $Unites -k-dynamic-linker=/lib/ld-linux.so.2 -kgtk2/gtk2.link.res $@
 # end.
Et donc pour lancer notre compilation :
 $./comp gtk000.pas
 Free Pascal Compiler version 1.0.10 [2004/02/26] for i386
 Copyright (c) 1993-2003 by Florian Klaempfl
 Target OS: Linux for i386
 Compiling gtk000.pas
 Assembling gtk000
 Linking gtk000
 7 Lines compiled, 1.5 sec
Il y a en fait d'autres lignes avec pas mal d'avertissements, car les unités codice_5, etc. sont compilées la première fois.
On peut ensuite lancer notre programme :
 $./gtk000
Il ne se passe rien, ce qui est normal puisque on ne lui a rien vraiment demandé. On va pouvoir maintenant dans la suite de ce livre passer à des choses plus sérieuses.
Avec Free Pascal version 2.0.x (1.9.x).
C'est plus simple :
 $ppc386 gtk000
 Free Pascal Compiler version 1.9.8 [2005/02/20] for i386
 Copyright (c) 1993-2005 by Florian Klaempfl
 Target OS: Linux for i386
 Compiling gtk000.pas
 Linking gtk000
 7 Lines compiled, 2.0 sec
Et pour lancer le programme c'est pareil :
 $./gtk000
La compilation sous Windows.
Avec Free Pascal.
Comme pour Linux, on peut utiliser un script. Dans le cas de figure où on a les sources dans le répertoire où on a décompacté les en-têtes Gtk+ et le compilateur dans le répertoire codice_6 du même disque, le fichier codice_7 donne ceci :
 @echo off
 del *.ow
 del *.ppw
 set Unites=-Fugtk2\glib -Fugtk2\gdk-pixbuf -Fugtk2\pango -Fugtk2\atk -Fugtk2\gtk+\gdk -Fugtk2\gtk+\gtk
 echo,
 \pp\bin\win32\ppc386 %Unites% -Fu. %1
 echo,
Pour compiler, il faut ouvrir une fenêtre « Invite de commandes » (Démarrer - Programmes - Accessoires) et se placer dans le répertoire des sources :
 comp gtk000
L'exécution se lance par :
 gtk000.exe
Ou via l'explorateur de fichiers.