Board logo

标题: GTK 开发初步 [打印本页]

作者: akabbs    时间: 2010-7-30 14:58     标题: 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。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0