首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

GTK 开发初步

GTK 开发初步

1.安装开发环境
在ubuntu 下安装gtk
$sudo aptitude install libgtk2.0-dev

这样系统会自动的查检并安装libgtk2.0的库。一般系统都会安装libgtk2.0的。

2.写一个简单的窗口的例子,代码如下:

#include <gtk/gtk.h>

int
main (int argc, char **argv)
{
  GtkWidget *window;

  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  g_signal_connect (window, "delete_event", gtk_main_quit, NULL); /* dirty */

  gtk_widget_show_all (window);

  gtk_main ();

  return 0;
}

3、编译
gcc -o hello hello.c `pkg-config --cflags --libs gtk+-2.0`

4、执行
./hello


执行效果
每步必解
1.安装的都是编译时需要的头文件和寻找头文件的方法
我们可以通过以下命令可以看出安装的文件。
$dpkg -L libgtk2.0-dev
其中头文件就不再强调了,下面这些文件是后来为编译提供服务的。
/usr/lib/pkgconfig/gdk-2.0.pc
/usr/lib/pkgconfig/gdk-pixbuf-2.0.pc
/usr/lib/pkgconfig/gdk-pixbuf-xlib-2.0.pc
/usr/lib/pkgconfig/gdk-x11-2.0.pc
/usr/lib/pkgconfig/gtk+-2.0.pc
/usr/lib/pkgconfig/gtk+-unix-print-2.0.pc
/usr/lib/pkgconfig/gtk+-x11-2.0.pc

2. 程序的含义和解释
gtk程序是C语言编写的,
gtk_init (&argc, &argv); //gtk内部初始化,不可少

gtk_main ();//真正的进入显示和循环,不可少
我们在这里仅仅做了一个顶级窗口,就是中间的3句话。

3.编译参数
$ pkg-config --cflags --libs gtk+-2.0
这个命令会寻找文件
/usr/lib/pkgconfig/gtk+-2.0.pc
这个文件里包含了 寻找头哦文件的路径和库的参数。
它由pkgconfig --cflag gtk+-2.0
和pkgconfig --libs gtk+-2.0合成。

解释的不算详细,如果有问题请到sns.akaedu.org继续讨论。
欢迎大家一起学习gtk。
返回列表