Programmation GTK2 en Pascal/Installation sous Linux
Programmation GTK2 en Pascal |
|
Compilateur Pascal
modifierFree Pascal
modifierMandrake
modifierAvec un urpmi bien configuré ([1]) :
#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 fpc-1.9.8-0.i586.rpm
qu'on installe classiquement :
#rpm --install fpc-1.9.8-0.i586.rpm
Kylix
modifier<à compléter>
En-têtes GTK2 pour le langage Pascal
modifierFree Pascal version 1.0 ou Kylix
modifierL'archive gtk2forpascal-1.0.7.tgz
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 gtk2
avec tout ce qu'il faut dedans.
Free Pascal version 2.0 (1.9.x)
modifierSi 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 fpc-1.9.8-0.src.rpm
.
#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 gtk+/gtk/gtkincludes.inc
car il y a 3 unités qui ne passent pas. Mettez en commentaires les lignes :
// new GtkFileChooser Widget //{$IFDEF HasGTK2_6} //{$include gtkfilechooserdefault.inc} //{$include gtkfilechooserembed.inc} //{$include gtkfilechooserentry.inc} //{$ENDIF}
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+
modifierSur 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
modifier$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
modifierTaper en root « locate *.pc » pour trouver le répertoire pkgconfig
.
Vérifier si le fichier "gtk+-2.0" est présent ! Si non : installer libgtk2.0-dev
et libglade2-dev
. Et il est conseillé d'ajouter : libgtk2.0-0
, libgtk2.0-bin
et libgtk2.0-common
.
Compilation
modifierPar 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 :
- glib+-2.6.2.tar.bz2
- atk-1.9.0.tar.bz2
- pango-1.8.0.tar.bz2
- gtk+-2.6.2.tar.bz2
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.