HOME 生活记录运维/编程
作者/来源:yixinu.com
栏目:运维/编程
日期:2012-11-13 12:18:11

最重要一点:Ubuntu 上开发gtk+2.0的程序,需要安装相应的头文件和库。


这是网上搜索的,别人安装的软件包:

apt-get install vim         #使用vim来编写代码,当然您可以使用任何自己喜欢的编辑器
apt-get install build-essential         #这将安装gcc/g++/gdb/make 等基本编程工具
apt-get install gnome-core-devel          #这将安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件 

apt-get install pkg-config                #用于在编译GTK程序时自动找出头文件及库文件位置
apt-get install devhelp                    #这将安装 devhelp GTK文档查看程序
apt-get install libglib2.0-doc libgtk2.0-doc             #这将安装 gtk/glib 的API参考手册及其它帮助文档
apt-get instal glade libglade2-dev                      #这将安装基于GTK的界面构造程序


这是我自己安装的软件包

只安装这三,编译下面的程序也成功了,事实说明上面那些软件包不需要装那么多

apt-get install libglib2.0-dev

apt-get install build-essential

apt-get install pkg-config


都是安装好后测试一下程序win.c

  1 #include<gtk/gtk.h>
  2 
  3 void hello(GtkWidget *widget,gpointer data)
  4 {
  5   g_print("Hello Ubuntu!
");
  6   }
  7   gint delete_event(GtkWidget *widget,GdkEvent *event,gpointer data)
  8   {
  9   g_print ("delete event occurred
");
 10   return(TRUE);
 11 }
 12 void destroy(GtkWidget *widget,gpointer data)
 13 {
 14   gtk_main_quit();
 15 }
 16 int main( int argc, char *argv[] )
 17 {
 18   GtkWidget *window;
 19   GtkWidget *button;
 20   gtk_init (&argc, &argv);
 21   window=gtk_window_new (GTK_WINDOW_TOPLEVEL);
 22   gtk_signal_connect (GTK_OBJECT(window),"delete_event",GTK_SIGNAL_FUNC(delete_event),NULL);
 23   gtk_signal_connect (GTK_OBJECT (window), "destroy",GTK_SIGNAL_FUNC (destroy), NULL);
 24   gtk_container_set_border_width (GTK_CONTAINER (window), 10);
 25   button = gtk_button_new_with_label ("Hello Ubuntu!");
 26   gtk_signal_connect (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (hello), NULL);
 27   gtk_signal_connect_object (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (gtk_widget_destroy),GTK_OBJECT (window));
 28   gtk_container_add (GTK_CONTAINER (window), button);
 29   gtk_widget_show (button);
 30   gtk_widget_show (window); /*显示一个窗口*/
 31   gtk_main(); /*进入主循环*/
 32   return(0);
 33 }


最后编译运行:

$ gcc win.c -o win `pkg-config --cflags --libs gtk+-2.0` 
$ . /hello


分享到:

Copyright © 2013-2014 yixinu.com 湘ICP备14004402号

QQ:316686606  Email: 316686606@qq.com