// 所有原创文章转载请注明作者及链接
// blackboycpp(AT)gmail.com
// QQ群: 135202158
What is GTK+?
GTK+ is a highly usable, feature rich toolkit for creating graphical user interfaces which boasts cross platform compatibility and an easy to use API.
-----------------------以上介绍来自于 http://www.gtk.org/index.html
由于GTK+的跨平台特性, 我们可以在Windows下使用DevCpp来开发使用GTK+图形库的GUI程序.
步骤如下:
1. 下载DevCPP, 也叫Dev-C++, 我使用的版本是4.9.9.2, 并安装
2. 下载gtk+ for win32工具包集合, 这个里面含有编译运行GTK+程序所需的所有东西, 不需要一个一个包下载安装了. 地址 : http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.14/gtk+-bundle_2.14.4-20081108_win32.zip, 照提示安装, 我的安装目录为
D:/dev/GTK
3.
将D:/dev/GTK/bin加入环境变量PATH
4. 运行cmd, 输入 "
pkg-config --cflags --libs gtk+-2.0
> d:/a.txt", 意思是把编译GTK+程序所需要的参数都重定向到D盘的a.txt文本文件中
5. 打开DevCpp, 新建一个工程, 注意工程类型为 Windows Application, C工程.
DevCpp可能会给你生成一个源文件, 将这个源文件的所有内容替换为一个简单的GTK+代码, 以下是一个例子:
- #include <gtk/gtk.h>
- int main( int argc, char *argv[])
- {
- GtkWidget *window;
- gtk_init(&argc,&argv);
- window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_window_set_title(GTK_WINDOW(window),g_locale_to_utf8( "中文" ,-1,NULL,NULL,NULL));
- g_signal_connect(window, "destroy" , G_CALLBACK(gtk_main_quit), &window);
- gtk_widget_show(window);
- gtk_main();
- return 0;
- }
6.点击 工程 > 工程属性 > "参数"选项卡, 在"编译器"框中输入a.txt的前半部分内容,我机器上是这样的:
-mms-bitfields -ID:/dev/GTK/include/gtk-2.0 -ID:/dev/GTK/lib/gtk-2.0/include -ID:/dev/GTK/include/atk-1.0 -ID:/dev/GTK/include/cairo -ID:/dev/GTK/include/pango-1.0 -ID:/dev/GTK/include/glib-2.0 -ID:/dev/GTK/lib/glib-2.0/include -ID:/dev/GTK/include/libpng13
在"连接器"框中输入a.txt的后半部分内容, 我机器上是这样的:
-LD:/dev/GTK/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl
注意这些内容会根据GTK+安装目录的不同而有所差别, 再说一遍, 我机器上是D:/dev/GTK. 设置完后点"确定".
7. 编译运行.
如果出现一个简单的空白窗口, 恭喜你成功了. [完]