当前位置:首页 > Windows程序 > 正文

Windows GTK+ 环境搭建(详解)

2021-03-24 Windows程序

Windows GTK+ 环境搭建

最近要做界面的一些东西,但是对微软提供的类库MFC不是很熟悉,里面封装了大量的Windows API比较麻烦,然后就想着其他方式吧!Qt、GTK+原本想学学Qt的,Qt跨平台、文档也多点,使用也更广泛。但是Qt的插件一直没有下载下来,然后就先学习学习GTK+吧!

在网上搜了好多关于Windows GTK+环境搭建的方法,但是很多说的都不是很清楚,所以自己就参考了一些文档,在官网上下载了所需的环境文件,自己搭建了GTK+的环境。并进行了详细的记录,以下是主要内容。

下载gtk All-in-one bundles包

好了,言归正传吧!开始我们的Windows GTK+ 环境搭建环节。主要分为以下几步:

1) 进入官网开始先了解学习一些有关GTK+的内容。

GTK+ 环境搭建(详解)" alt="Windows GTK+ 环境搭建(详解)" src="http://s1.sinaimg.cn/middle/a6fb6cc9tc919061a1840&690" real_src="http://s1.sinaimg.cn/middle/a6fb6cc9tc919061a1840&690">

2) 点击”Download”进入下载页面,找到自己的Windows所对应的环境Win32或者Win64链接,点击进入。

GTK+ 环境搭建(详解)" alt="Windows GTK+ 环境搭建(详解)" src="http://s10.sinaimg.cn/middle/a6fb6cc9tc9192a8b7879&690" real_src="http://s10.sinaimg.cn/middle/a6fb6cc9tc9192a8b7879&690">

3)若要下载、解压、整理那些单独的文件,则不是很方便,所以就可以选择有All-in-one bundles 的链接,点击下载。

4) 下载成功后,解压到任意一个目录底下即可,我选择的是” E:\Visual Studio\GTK Env”,即VS工程目录(不是安装目录)下的GTK EnV(gtk environment),

解压完成之后可以看到一些目录文件夹,主要包括:bin、etc、include、lib、man、manifest、share、src。其中bin目录下主要包含一些可执行文件和动态链接库,lib目录主要包含一些库文件、include主要包含的是一些头文件。

设置环境变量

1) 配置环境变量Path

如我所选,将”E:\Visual Studio\GTK Env\bin”加入到环境变量”Path”中。bin目录中包含有运行时所需的dll文件,其中也包括gtk-demo.exe示例程序。

2) 测试运行

运行” E:\Visual Studio\GTK Env\bin\gtk-demo.exe”示例程序,可以显示如下程序界面。

设置VS2008编译环境 设置附加包含目录

右击工程,选择属性->C/C++->常规->附加包含目录,添加GTK+目录下的include文件夹和include文件夹里的所有文件夹,还有lib文件夹的子文件夹里面的两个include文件夹,如下图所示。

设置附加库目录

转到库文件视图,添加GTK+目录的lib文件夹。设置附加库目录:选择链接器->常规->附加库目录,添加GTK+目录下的lib文件夹,如下图所示。

添加附加依赖项

新建C++的空项目,,在项目->属性->链接器->输入->附加依赖项,将” E:\Visual Studio\GTK Env\lib”目录下的所有.lib文件都放到附加依赖项中,其中包括:atk-1.0.lib、cairo.lib、expat.lib、fontconfig.lib、freetype.lib、gailutil.lib、gdk_pixbuf-2.0.lib、gdk-win32-2.0.lib、gio-2.0.lib、glib-2.0.lib、gmodule-2.0.lib、gobject-2.0.lib、gthread-2.0.lib、gtk-win32-2.0.lib、intl.lib、libpng.lib、pango-1.0.lib、

pangocairo-1.0.lib、pangoft2-1.0.lib、pangowin32-1.0.lib、zdll.lib。

测试

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

#include

int main (int argc, char *argv[])

{

GtkWidget *window;

GtkWidget *label;

//初始化GTK+库

gtk_init(&argc, &argv);

//创建主窗口

window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

//设置窗口大小

gtk_widget_set_size_request(window,300,300);

//设置标题

gtk_window_set_title(GTK_WINDOW (window), "Hello World"); 

//当窗口即将被销毁,停止主GTK+循环

g_signal_connect(window, "destroy",G_CALLBACK (gtk_main_quit), NULL);

//创建一个"Hello World"标签

label = gtk_label_new("Hello, World");

//将标签加入到主窗口

gtk_container_add(GTK_CONTAINER (window), label);

//设置窗口中的所有元素可见

gtk_widget_show_all(window);

//开始主循环,让它在那里休息,直到应用程序关闭

gtk_main();

return 0;

}

显示如下:

这样,我们的GTK+在Windows下的环境就搭建好了,Hello World也编写成功了,呵呵,不足之处还有待改善,希望以后能有机会再更好更多的研究下GTK+和QT吧!

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/66733.html