GTK+ Reference Manual |
---|
Использование GTK+ на FramebufferGTK+ на Framebuffer Linux framebuffer аспект использования GTK+ |
Linux-fb GDK не поддерживается и может не работать или даже не скомпилироваться. Информация приведенная ниже всё-же может быть полезной; к тому же есть несколько заплаток в bugzilla которые помогают сделать код linux-fb пригодным для компиляции (compilable).
Linux-fb порт GTK+, так же известный как GtkFB - реализация GDK (а значит и GTK+) для выполнения в Linux framebuffer. Выполняется как одиночный процесс не нуждающийся в X. Это позволяет использовать большинство GTK+ программ не изменяя исходного кода.
Вам нужна GTK+ 2.0; версии из серии 1.2.x не поддерживают framebuffer. Для компиляции GTK+ с поддержкой framebuffer вам потребуется FreeType 2; мы рекомендуем FreeType 2.0.1 или более поздние версии, так как есть некоторые проблемы с freetype-config в 2.0. Убедитесь что вы устанавливаете библиотеку FreeType после установки библиотеки Pango, так как Pango тоже нуждается в ней. FreeType может быть найдена на ftp://ftp.freetype.org. Вам также потребуется fontconfig который обеспечивает использование внутреннего интерфейса FreeType 2 в Pango. Fontconfig также зависит от FreeType. Fontconfig можно найти на http://fontconfig.org.
Вам нужна видеокарта, которая позволяет использовать framebuffer driver в режимах 8, 16, 24 или 32 bpp, такой как matroxfb или vesafb. Вам также нужна поддержка мышки. GTK+ в данное время корректно поддерживает ps2 мыши, ms serial мыши и fidmour touchscreen. Дополнительная аппаратная поддержка должна быть простой в добавлении.
Сначала соберите и установите GLib, ATK и Pango как обычно, в соответствующем порядке. Сконфигурируйте GTK+ выполнив configure (или autogen.sh если вы работаете с CVS) с опцией --with-gdktarget=linux-fb.
Компилируется как обычно: make; make install
Так как GtkFB использует FreeType 2 для визуализирования шрифтов, она может визуализировать TrueType и Postscript type 1 сглаженные шрифты.
GtkFB использует fontconfig для конфигурирования информации о шрифтах, включая справочники и псевдонимы. Убедитесь что у вас есть файл fonts.conf в котором указано где находятся ваши TrueType и Type1 шрифты. Пожалуйста обратитесь к документации по fontconfig для получения более подробной информации.
Для выполнения программы вы должны просто запустить её, но есть некоторые проблемы которыми можно управлять используя переменные окруженияя. Попробуйте выполнить gtk-demo, которая поставляется вместе с GTK+, чтобы проверить некоторые нюансы.
Если вы используете ps2 мышь, убедитесь что доступно чтение и запись в устройство /dev/psaux.
Убедитесь что не запущен gpm.
Если вы не определили всё что угодно при старте GtkFB, текущую виртуальную консоль, текущеме разрешение и глубину цвета. Всё это может быть определено переменными окруженияя:
GDK_VT:
сбрасывает текущий открытый VT.
0-9: открывает на указанном VT. Убедитесь что у вас достаточно прав на чтение/запись.
new: размещает новый VT после последнего, используемого в текущеме время.
GDK_DISPLAY_MODE:
Определяет имя режима в /etc/fb.modes который вы хотите использовать.
GDK_DISPLAY_DEPTH:
Определяет желательную битовую глубину framebuffer.
GDK_DISPLAY_WIDTH:
Определяет желательную ширину framebuffer.
GDK_DISPLAY_HEIGHT:
Определяет желательную высоту framebuffer.
GDK_DISPLAY:
Определяет устройство framebuffer для использования. По умолчанию /dev/fb0.
GDK_MOUSE_TYPE:
Определяет тип мыши. В данное время поддерживаются:
ps2 - PS/2 mouse
imps2 - PS/2 intellimouse (wheelmouse)
ms - Microsoft serial mouse
fidmour - touch screen
По умолчанию используется ps2.
GDK_KEYBOARD_TYPE:
Определяет тип клавиатуры. В настоящее время поддерживаются
xlate нормальный режим клавиатуры tty.
Весьма ограниченный, не может обнаружить многие события. Не может
обработать ctrl/alt/shift для любых ключей. Это драйвер по умолчанию,
но не должен применяться при "production" использовании.
raw чтение tty в режиме RAW mode.
Устанавливает клавиатуру в режим RAW mode и обрабатывает все keycodes. Это
даёт корректную обработку модификаторов и клавиш up/down событий. Вы
должны быть root чтобы использовать это. Если вы используете это для разработки или
отладки то рекомендуется включить магический sysrq обработчик в
ядре. Тогда вы сможете нажав ALT-SysRQ-r на клавиатуре вернуться в
нормальный режим.
По умолчанию используется xlate.
Нажатие Ctrl-Alt-Return перерисовывает весь экран. К сожалению это не может быть использовано с драйвером клавиатуры xlate, но в этом случае вы можете использовать shift-F1.
Нажатие Ctrl-Alt-BackSpace уничтожает GtkFB программу. (При использовании xlate драйвера, используйте shift-F8.)