环境搭建及配置
使用C/C++进行GUI程序开发主要有GTK+、QT、wxWidget几种选择,其中QT是使用最多的一种吧,其社区及资料最丰富。
我目前没有系统学习C++、类以及面向对象的理论,所以选择GTK。(全文均为个人浅见,欢迎指正)
虽然GTK最初是来自于linux下著名的GIMP图像处理软件,但很快也能够支持常见的WIndows、Mac平台,所以可以实现一次编码,无需或仅需少量改动就可以支持多平台运行。
我的主要开发环境是Ubuntu12.04,gtk版本为2,为了做跨平台测试,安装了Vbox,装了Winxp虚拟机作为辅助开发环境。
下面我总结了在Ubuntu12.04、Winxp进行GTK开发环境搭建及测试的过程。
(一)、Ubuntu12.04
1、注:
参照一篇博文,不过因为我的Ubuntu版本较新,安装过程与之有所不同。
2、安装步骤:
1)安装gcc/g++/gdb/make 等基本编程工具:
$sudo apt-get install build-essential
2)安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件 $sudo apt-get install gnome-core-devel
这里大概需要下载500MB的文件,其中不仅包含GTK的开发文件,而且包括很多Gnome开发的必要文件。
3)用于在编译GTK程序时自动找出头文件及库文件位置
$sudo apt-get install pkg-config
我的机器在进行此步及之后的步骤时提示pkg-config、devhelp等均已安装完毕,我想是之前安装或者第二步里已经安装完毕了。
4)安装 devhelp——Gnome开发者帮助浏览器,含GTK文档
$sudo apt-get install devhelp
5)安装 gtk/glib 的API参考手册及其它帮助文档 $sudo apt-get install libglib2.0-doc libgtk2.0-doc
6)安装基于GTK的界面设计工具glade $sudo apt-get install glade libglade2-dev
7)安装gtk2.0 或者 将gtk+2.0所需的所有文件统通下载安装完毕
$sudo apt-get install libgtk2.0*
3、查看GTK版本:
1)查看 2.x 版本
$pkg-config --modversion gtk+-2.0
2)其他查看命令
$pkg-config --version
$pkg-config --list-all grep gtk
4、测试:
代码文件 higtk.c
//higtk.c
#include <gtk/gtk.h>
int main(int argc,char *argv[])
{
GtkWidget *window;
GtkWidget *label;
gtk_init(&argc,&argv);
/* create the main, top level, window */
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
/* give it the title */
gtk_window_set_title(GTK_WINDOW(window),"Hello World");
/* connect the destroy signal of the window to gtk_main_quit
* when the window is about to be destroyed we get a notification and
* stop the main GTK+ loop
*/
g_signal_connect(window,"destroy",G_CALLBACK(gtk_main_quit),NULL);
/* create the "Hello, World" label */
label = gtk_label_new("Hello, World");
/* and insert it into the main window */
gtk_container_add(GTK_CONTAINER(window),label);
/* make sure that everything, window and label, are visible */
gtk_widget_show_all(window);
/* start the main loop, and let it rest until the application is closed */
gtk_main();
return 0;
}
编译:
$gcc -o higtk higtk.c `pkg-config --cflags --libs gtk+-2.0`
运行:
$./higtk
效果如图:
(二)、Winxp(虚拟机)
1、注:
相较而言,winxp下安装要容易些,参照一篇博文。
2、步骤:
1)下载一个gtk+-bundle_*_win32.zip
2)解压缩到指定目录,如解压到C:/GTK
3)设置环境变量PATH:c:/GTK/bin
3、测试:
使用预装Mingw的Code::blocks作为IDE,新建GTK工程,注意选择GTK路径C:\GTK,可自动识别成功。
自动生成的工程运行如下:
至此,GTK环境搭建完成