vs2008下搭建GTK+开发环境的搭建指南

步骤一:

 http://www.gtk.org/download/win32.php 可以找到Windows(32-bit)  64-bit 的版本下载,无论你的系统是32bit还是64bit的,不要根据系统选择开发包,要根据编译器是32bit还是64bit来选择开发包,无论VS2012还是codeblocks默认的编译器都是32bit的,所以选择32bit的开发包即可。如果想要简单的话,页面上也提供了一个 bundle 包,这是将所有库打包在一起的,可以下载这个使用。注意, bundle 包并没有单列出来,而是在页面正文中给出的链接,可能需要小心找找。我下载的是gtk+bundle_3.6.4-20130921_win32.zip和gtk+bundle_2.24.10-20120208_win32.zip是目前3.x和2.x最新的版本了。首先安装3.6.4版本搭建完环境后编译报错,缺省许多头文件。可能是vs版本过低不兼容的原因吧。然后我又重新安装的2.x版本。一切OK。

步骤二:

将下载完的 bundle 包解压到D盘根目录下(随便指定,没有限制)。复制 bin 文件夹路径到环境变量 path 里面,

以便我们编译出的 exe 文件运行时可以找到那些 dll  。

系统环境变量的设置:

My Computer - >Porperties->Path(edit)->add D:\GTK_2.X\bin



添加完成之后,你们可以试着运行bin目录下的gtk3-demo.exe,如果配置没有错误将会出现GTK+ Code Demos的窗口,这就说明你的配置是没有错误的。



步骤三:

VS2008搭建GTK+开发环境

(1)设置包含文件目录:工具->选项->项目和解决方案->VC++目录->显示一下内容的目录->包含文件,

添加GTK目录include文件夹和include文件夹里的所有文件夹,还有lib文件夹的子文件夹里面的两个include文件夹,如下图所示。


添加文件列表如下:

D:\GTK_2.X\include

D:\GTK_2.X\include\atk-1.0

D:\GTK_2.X\include\cairo

D:\GTK_2.X\include\fontconfig

D:\GTK_2.X\include\freetype2

D:\GTK_2.X\include\gail-1.0

D:\GTK_2.X\include\gdk-pixbuf-2.0

D:\GTK_2.X\include\gio-win32-2.0

D:\GTK_2.X\include\glib-2.0

D:\GTK_2.X\include\gtk-2.0

D:\GTK_2.X\include\libpng14

D:\GTK_2.X\include\pango-1.0

D:\GTK_2.X\include\pixman-1

D:\GTK_2.X\lib\glib-2.0\include

D:\GTK_2.X\lib\gtk-2.0\include


(2)转到库文件视图,添加GTK目录的Lib文件夹。如下图所示


(3)新建C++控制台空工程,在 工程名上点击右键->项目属性->配置属性->链接器->附加依赖项 中添加如下内容:



(4)测试:新建CPP文件,写入如下代码,可以正常运行则配置成功。

#include <stdlib.h>
#include <gtk/gtk.h>
static void helloWorld (GtkWidget *wid, GtkWidget *win)
{
GtkWidget *dialog = NULL;
dialog = gtk_message_dialog_new (GTK_WINDOW (win), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, \

GTK_BUTTONS_CLOSE, "Hello World!");
gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);
gtk_dialog_run (GTK_DIALOG (dialog));
gtk_widget_destroy (dialog);
}
int main (int argc, char *argv[])
{
GtkWidget *button = NULL;
GtkWidget *win = NULL;
GtkWidget *vbox = NULL; /* Initialize GTK+ */
g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING, (GLogFunc) gtk_false, NULL);
gtk_init (&argc, &argv);
g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING, g_log_default_handler, NULL); /* Create the main window */
win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_container_set_border_width (GTK_CONTAINER (win), 8);
gtk_window_set_title (GTK_WINDOW (win), "Hello World");
gtk_window_set_position (GTK_WINDOW (win), GTK_WIN_POS_CENTER);
gtk_widget_realize (win);
g_signal_connect (win, "destroy", gtk_main_quit, NULL);/* Create a vertical box with buttons */
vbox = gtk_vbox_new (TRUE, 6);
gtk_container_add (GTK_CONTAINER (win), vbox);
button = gtk_button_new_from_stock (GTK_STOCK_DIALOG_INFO);
g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (helloWorld), (gpointer) win);
gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);
button = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
g_signal_connect (button, "clicked", gtk_main_quit, NULL);
gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0); /* Enter the main loop */
gtk_widget_show_all (win);
gtk_main ();
return 0;
}

(5)运行画面如下:




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值