感谢支持
我们一直在努力

Ubuntu 12.04安装GTK2.0

在撰写这篇教学文件时正好在学Ubuntu,这边说明一下如何在Ubuntu下设定GTK开发基本环境。


由于GTK基本上主要以C语言来撰写,您必须有C编译器,Ubuntu预设安装好后就有gcc了,不过缺少必要的Header file,您可以在文字模式下,安装build-essential套件,例如:


sudo apt-get install build-essential


安装完成后,可以写个基本的C语言程式:


hello.c


#include


int main(void) {


printf(“Hello! World!\n”);


printf(“哈啰!C语言!\n”);


return 0;


}


编译并执行看看:


$ gcc -o hello hello.c


$./hello


Hello! World!


哈啰!C语言!


再来安装GTK开发套件libgtk2.0-dev:


sudo apt-get install libgtk2.0-dev


安装完成后,可以使用pkg-config查看一下GTK的相关编译环境资讯:


pkg-config –cflags –libs gtk+-2.0


pkg-config会读取GTK附带的.pc档来取得相关编译资讯,–cflags会列出include目录,–libs列出所连结的函式库及其所在目录,以我的电脑为例:


目录,以我的电脑为例:


$ pkg-config –cflags –libs 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 -I/usr/include/pixman-1  -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0


可以分开执行比较清楚,例如:可以分开执行比较清楚,例如:


$ 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 -I/usr/include/pixman-1 


$ 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 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0


安装GTK环境只要安装一个libgtk2.0-dev就可以了,而安装gnome开发环境的话,需要装gnome-core-devel,它包含GTK开发包。这里我们只介绍安装GTK2.0的方法。

下面我们给个小程序试试:


#include


void hello(GtkWidget *widget,gpointer data)


{


    g_print(“Hello Ubuntu!\n”);


}


gint delete_event(GtkWidget *widget,GdkEvent *event,gpointer data)


{


    g_print (“delete event occurred\n”);


    return(TRUE);


}


void destroy(GtkWidget *widget,gpointer data)


{


    gtk_main_quit();


}


int main( int argc, char *argv[] )


{


    GtkWidget *window;


    GtkWidget *button;


    gtk_init (&argc, &argv);


    window=gtk_window_new (GTK_WINDOW_TOPLEVEL);


    gtk_signal_connect (GTK_OBJECT(window),”delete_event”,GTK_SIGNAL_FUNC(delete_event),NULL);


    gtk_signal_connect (GTK_OBJECT (window), “destroy”,GTK_SIGNAL_FUNC (destroy), NULL);


    gtk_container_set_border_width (GTK_CONTAINER (window), 10);


    button = gtk_button_new_with_label (“Hello Ubuntu!”);


    gtk_signal_connect (GTK_OBJECT (button), “clicked”,GTK_SIGNAL_FUNC (hello), NULL);


    gtk_signal_connect_object (GTK_OBJECT (button), “clicked”,GTK_SIGNAL_FUNC (gtk_widget_destroy),GTK_OBJECT (window));


    gtk_container_add (GTK_CONTAINER (window), button);


    gtk_widget_show (button);


    gtk_widget_show (window); 


    gtk_main(); 


    return(0);


}


然后用下面命令编译运行


$ gcc gtktest.c -o gtktest `pkg-config –cflags –libs gtk+-2.0`


$ ./gtktest


最后得到hello Ubuntu的小窗口。证明安装成功。


更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu 12.04安装GTK2.0
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏