ubuntu11 gtk20 eclipse配置.docx
《ubuntu11 gtk20 eclipse配置.docx》由会员分享,可在线阅读,更多相关《ubuntu11 gtk20 eclipse配置.docx(9页珍藏版)》请在冰豆网上搜索。

ubuntu11gtk20eclipse配置
1安装GTK和Eclipse
这两个东西在ubuntu10.04的安装盘上都有,找出来装上就好了,这个文章是说GTK2的
2验证GTK的安装
在命令行输入/usr/bin/gtk-demo
如果安装成功,就会弹出gtk的示例窗口:
3如何使用Eclipse编译GTK+
其实就是添几个参数,可以参考一下这里的我的配置
首先是检查一下ToolChain:
GCC Ccomplier和 GCC Clinker
接下来是头文件的配置:
/usr/include/gtk-2.0
/usr/include/glib-2.0
然后就是使用Eclipse的自动提示功能:
至此设置成功,下面是个demo。
#include
intmain(intargc,char*argv[])
{
GtkWidget*window;
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_show(window);
gtk_main();
return0;
}
方法二(我自己使用这个)
Ubuntu11
一、安装JDK以及Eclipse(CDT版),我这里就不多介绍了。
二、GTK(有时间补)
三.创建工程
新建projectnew->cproject,projecttype选择HelloworldANSIcproject,然后按如下步骤配置:
在project->properties->c/c++build下setting:
(1)gcccomplier->includes->includepaths(-I)中一项项添加命令的结果‘pkg-config--cflagsgtk+-2.0’,即添加头文件路径
我机子上执行‘pkg-config--cflagsgtk+-2.0’结果如下:
laptop:
~/workspace/gtk/src$pkg-config--cflagsgtk+-2.0
-pthread-D_REENTRANT-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/gio-unix-2.0/-I/usr/include/glib-2.0-I/usr/lib/glib-2.0/include-I/usr/include/pixman-1-I/usr/include/freetype2-I/usr/include/directfb-I/usr/include/libpng12
即一项项添加
/usr/include/gtk-2.0
/usr/lib/gtk-2.0/include
/usr/include/atk-1.0
/usr/include/cairo
/usr/include/pango-1.0
/usr/include/gio-unix-2.0/
/usr/include/glib-2.0
/usr/lib/glib-2.0/include
/usr/include/pixman-1
/usr/include/freetype2
/usr/include/directfb
/usr/include/libpng12
(2)对于linker:
GCCClinker->libraries中添加命令'pkg-config--libsgtk+-2.0'执行结果
我机子上执行‘pkg-config--libsgtk+-2.0’结果如下:
laptop:
~/workspace/gtk/src$pkg-config--libsgtk+-2.0
-pthread-lgtk-x11-2.0-lgdk-x11-2.0-latk-1.0-lgio-2.0-lpangoft2-1.0-lgdk_pixbuf-2.0-lm-lpangocairo-1.0-lcairo-lpango-1.0-lfreetype-lfontconfig-lgobject-2.0-lgmodule-2.0-lgthread-2.0-lrt-lglib-2.0
即一项项添加
gtk-x11-2.0
gdk-x11-2.0
atk-1.0
gio-2.0
pangoft2-1.0
gdk_pixbuf-2.0
pangocairo-1.0
cairo
pango-1.0
freetype
fontconfig
gobject-2.0
gmodule-2.0
gthread-2.0
rt
glib-2.0
另外还需加入库的搜索路径/usr/lib/gtk-2.0
三.GTK程序Hello_world示例
#include
/*定义回调函数hello,点击按钮时被系统自动调用*/
voidhello(GtkWidget*widget,gpointer*data)
{
g_print("buttonclickedanddata=%s\n",(char*)data);
}
/*定义回调函数destroy,关闭窗口时被系统自动调用*/
voiddestroy(GtkWidget*widget,gpointer*data)
{
gtk_main_quit();
}
intmain(intargc,char**argv)
{
/*定义指向控件的指针*/
GtkWidget*window;
GtkWidget*button;
/*初始化图形显示环境*/
gtk_init(&argc,&argv);
/*创建窗口,并设置当关闭窗口时,要执行的回调函数*/
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(GTK_OBJECT(window),"destroy",
GTK_SIGNAL_FUNC(destroy),NULL);
/*设置窗口的属性*/
gtk_container_border_width(GTK_CONTAINER(window),20);
/*创建按钮,并设置当点击按钮时,要执行的回调函数*/
button=gtk_button_new_with_label("HelloWorld");
g_signal_connect(GTK_OBJECT(button),"clicked",
GTK_SIGNAL_FUNC(hello),"Iamfrombutton");
/*将按钮加入到窗口中*/
gtk_container_add(GTK_CONTAINER(window),button);
/*显示按钮和窗口*/
gtk_widget_show(button);
gtk_widget_show(window);
/*进入消息处理循环*/
gtk_main();
return0;
}
编辑运行就可以了
若出现launchfailed.Binarynotfound问题直接选择project>buildall就可以了