Tiré de GTK+ Reference Manual

Utiliser GTK+ sur le Framebuffer

Utiliser GTK+ sur le Framebuffer — Les aspects de l'utilisation de GTK+ avec le framebuffer  de Linux

GTK+ pour  le Framebuffer de Linux

Note

La cible de linux-fb de GDK n'est pas maintenue et peut ne pas fonctionner ou même compiler.  l'information ci-dessous peut encore être utile ;  il y a aussi plusieurs patches dans bugzilla  qui peuvent être utiles pour créer le code de compilation de  linux-fb.

Le port de linux-fb pour GTK+, aussi connu sous le nom GtkFB est une implémentation de GDK ( par conséquent de GTK+) qui fonctionne sur le framebuffer de Linux. Il fonctionne dans un processus simple qui n'a pas besoin de X.  Il devrait exécuter la plupart des programmes de GTK+ sans aucun changement de la source.

Conditions de Construction

Vous avez besoin de GTK+ 2.0; les séries 1.2x n'ont pas de support framebuffer. Pour compiler GTK+ avec le support framebuffer vous avez besoin de FreeType 2; nous vous recommandons FreeType 2.0.1 ou plus, comme il y avait quelques  problèmes avec freetype-config  dans 2.0. Assurez-vous que vous avez installé FreeType avant Pango, Pango en a besoin également; on peut trouver FreeType sur http://www.freetype.org/index2.html . Vous aurez aussi besoin de fontconfig afin d' utiliser correctement le backend de FreeType2 dans Pango; Fontconfig dépend aussi de FreeType.  On peut trouver fontconfig sur http://fontconfig.org.


Matériel nécessaire

Vous avez besoin d'une carte graphique avec un driver framebuffer disponible qui peut fonctionner en 8,16, 24 ou 32 bpp, comme matroxfb ou vesafb. Vous aurez aussi besoin d'une souriscompatible(?). GTK+ supporte normalement la souris ps2, la souris ms serial  et l'écran tactile  fidmour.


Construction et installation

Premièrement construisez et installez GLib, ATK et Pango normalement, dans cet ordre. Ensuite configurez GTK+ en exécutant configure (ou autogen.sh si l'exécution se fait depuis CVS) avec --with-gdktarget=linux-fb.

Enfin compiler normalement : make; make install

Polices

Depuis que GtkFB utilise FreeType2 pour afficher des polices il peut afficher des polices antialias TrueType et Postscript type 1.

GtkFB utilise fontconfig pour la configuration des information de police, incluant les répertoires et les alias. Assurez-vous que vos fichiers fonts.conf ont été configurés à l'endroit où se trouventles polices TrueType and Type1. Référez-vous à la documentation de fontconfig pour plus d'informations.


Exécution

Pour exécuter un programme vous devez seulement le faire démarrer, mais il y a certaines choses qui peuvent causer des problèmes, et certaines  qui peuvent être contrôlées par les variables d'environnement. Essayez la distribution gtk-demo avec GTK+ pour tester si ces choses fonctionnent.

Si vous utilisez une souris ps2, assurez-vous que  /dev/psaux is soit défini  en lecture et en écriture.

Assurez-vous que  gpm ne fonctionne pas.

Si vous n'avez rien spécifié GtkFB démarrera la la console virtuelle courante dans la résolution courante et

If you don't specify anything GtkFB will start up in the current virtual console in the current resolution et bit-depth. Cela peur être changé en définissant des variables d'environnement :

GDK_VT:
unset sifnifie ouvert sur le VT courant
0-9: ouvert sur le VT spécifié. Assurez vous que vous avez les droits en écriture/lecture à ce niveau.
new: Alloue un nouveau VT après la dernière utilisation d'un VT

GDK_DISPLAY_MODE:
Spécifie me nom d'un mode que vous voulez utiliser dans /etc/fb.modes

GDK_DISPLAY_DEPTH
:
Spécifie le bit depth désiré pour le framebuffer.

GDK_DISPLAY_WIDTH:
Spécifie la largeur désirée pour le framebuffer.

GDK_DISPLAY_HEIGHT:
Spécifie la hauteur désirée pour le framebuffer.

GDK_DISPLAY:
Spécifie le dispositif du framebuffer device qui va être utilisé. Par défaut /dev/fb0.

GDK_MOUSE_TYPE:
Définit le type de souris. Les plus courants sont:
ps2 - souris PS/2
imps2 - PS/2 intellimouse (wheelmouse)
ms - Microsoft serial mouse
fidmour - écran tactile
par défaut ps2.

GDK_KEYBOARD_TYPE
:
Définit le type de clavier. Les plus courants sont:
xlate - mode normal tty du clavier.
Relativement limité, il ne peut pas détecter les événements touche haut/touche bas.
N'utilise pas ctrl/alt/shift pour toutes les touches. Ceci est le driver par défaut
mais il ne devrait pas être utilisé pour une utilisation de "production".
raw - lire depuis le tty en mode RAW.
configure le clavier en mode RAW mode et permet tous les code de touche. Cela
permet une manipulation correcte des modificateurs et des événements touche haut/ touche bas.
Vous devez être en root pour l'utiliser. Si vous utilisé ceci pour développer ou
déboguer il est recommandé d'activer la manipulation de magic sysrq dans kernel.
 Ensuite vous pourrez utiliser ALT-SysRQ-r pour revenir au mode normal du clavier.
L'option par défaut est xlate.


Dispositifs de débogage

Pressez sur  Ctrl-Alt-Return pour repreindre l'écran en entier.  Malheureusement on ne peut pas le faire quand on utiliser le driver de clavier xlate, aussi à la place vous pouvez utiliser  shift-F1 quand vous utilisez ce driver.

Pressez sur Ctrl-Alt-BackSpace pour arrêter le programme GtkFB. (On ne peut pas le faire avec le driver  xlate, aussi, à la place vous pouvez utiliser shift-F8.)