Видео ролики бесплатно онлайн

Смотреть мультики видео

Официальный сайт avufa 24/7/365

Смотреть видео бесплатно

17.10.09 23:44

predatorОб этом руководстве

Это вводное руководство по программированию с использованием GTK+ на языке C. Все примеры были созданы и протестированы в Linux. Данное руководство нацелено на начинающих и немного опытных программистов.

GTK+ это библиотека для создания графического интерфейса пользователя. Она также называется GIMP Toolkit (инструментарий GIMP). Первоначально, библиотека создавалась в процессе разработки графического редактора GIMP. С тех пор GTK+ стал одним из самых популярных инструментов в Linux и BSD системах. Сегодня, большинство open source программ с графическим интерфейсом создается либо с помощью Qt, либо с помощью GTK+. GTK+ это объектно-ориентированный интерфейс программирования приложений. Объектно-ориентированная система создана с использованием объектной системы Glib, которая является основой для GTK+. GObject также позволяет создавать привязки к другим языкам программирования. На данный момент существуют привязки к C++, Python, Perl, Java, C# и другим языкам.

В свою очередь, GTK+ зависит от следующих библиотек:
- Glib
- Pango
- Atk
- GDK
- GdkPixbuf
- Cairo

Библиотека Glib используется для общих целей. Она обеспечивает различные типы данных, работу со строками, уведомления об ошибках, запись сообщений, работу с потоками и другие полезные особенности. Библиотека Pango обеспечивает интернационализацию. ATK для обеспечения комфортного использования приложения людьми с ограниченными физическими возможностями. GDK это обертка над низкоуровневыми инструментами отрисоки и фукциями окна, которые обеспечиваются основной графической системой. В Linux, GDK находится между X Window System и библиотекой GTK+. Недавно, большая часть функций GDK была переложена на библиотеку Cairo. GdkPixbuf является инструментом для загрузки изображений и манипулирования буффером пикселей. Cairo - библиотека для создания 2D векторной графики. Она была включена в GTK+ начиная с версии 2.8.

GNOME и Xfce были созданы с использованием GTK+. SWT и wxWidgets - хорошо известные программные фреймворки, использующие GTK+. Из выдающихся программ, использующих GTK+. можно назвать Firefox и Inkscape.

Компиляция GTK+ приложений.

Для того чтобы скомпилировать GTK+ приложение, мы должны иметь при себе средство под названием pkg-config. Оно будет обеспечивать нас информацией об установленных библиотеках. Если мы захотим использовать особую библиотеку, оно обеспечит нас зависимыми библиотеками и файлами заголовков, которые нам необходимы. Программа pkg-config извлекает информацию о пакетах из специального файла.
$ gcc -o simple simple.c `pkg-config --libs --cflags gtk+-2.0`

Здесь мы показали, как скомпилировать простую программу, исходный код которой состоит из одного файла.

1
2
3
4
$ pkg-config --cflags gtk+-2.0
-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0
-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12  

Это покажет нам все необходимые файлы заголовков для программирования с использованием GTK+.

1
2
3
4
5
$ pkg-config --libs gtk+-2.0
-lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0
-lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr
-lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0
-lgmodule-2.0 -ldl -lglib-2.0

А это покажет необходимые библиотеки.

PS: оригинал.
PSS. Оформлял как перевод. Нажал сохранить, а все настройки сбились =(


Теги:

Username 17.10.09 23:55 # +0
Коль, хорошая заметка, молодец.
bobry 18.10.09 00:30 # +0
кстати с переводом давнишняя проблема
у меня OpenSolaris тоже неполучилось запостить по нормальному
ArtemZ 18.10.09 00:32 # +0
ох как годно. пойду пробовать
bosha 18.10.09 09:11 # +0
Как во время. Только вчера озадачил себя GTK+, правда на питоне, но на си по лучше будет =)
ava1ar 18.10.09 12:32 # +0
Полезный пост, спасибо!
n7y 18.10.09 14:26 # +0
Спасибо!

Начинаю изучать программирование под линукс, статьи из разряда "для начинающих" для меня весьма ценны :-)

Ещё по GTK неплохо (ИМХО) написано на опеннете:

m0nhawk 18.10.09 19:59 # +0
Ммм... А после двоеточия должна была быть ссылка?
n7y 18.10.09 20:39 # +1
да, не знаю почему не появилась - думал фитча (премодерация ссылок), а видимо баг ^_^

В общем вот:

http://www.opennet.ru/docs/RUS/gtk/node37.html
predator 18.10.09 20:55 # +0
а я про это не знал :)
predator 18.10.09 20:40 # +1
http://www.opennet.ru/docs/RUS/gtk_plus/
это перевод оффициальной документации
n7y 18.10.09 20:48 # +0
Ой, а про это я как-то и забыл ^_^"
Kraplax 18.10.09 18:47 # +0
Приятно =)
Спасибо за пост. Я так понял дальше будет больше? Я далеко не поклонник GTK, но было бы интересно поглядеть немного на него с точки зрения начинающего.
m0nhawk 18.10.09 19:59 # +0
GTK+ нравится, но я бы лучше почитал про wxWidgets.

Лучшие блоги (все 80)
Топ пользователей Топ блогов
Топ пользователей Топ блогов
Элита (все 1652 из 134 городов)
Топ пользователей Топ блогов
В сети: betruger72, zarkone

Новенькие: lexek, lex, lex, apnix, Alder
welinux.ru

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн