最近想用GTK写一个程序,今天配置了下开发环境,网上教程很多,却大多不能直接按上面所说的完成,折腾了一下,终于搞好,把过程描述下。
1. 上GTK官网下载windows版本的GTK工具包http://www.gtk.org/download/win32.php,这里选择in-one bundle,直接下载全部需要的工具就可以了,下载完后解压到自己的目录下,比如d:\gtk ,gtk文件夹里包含了所有需要使用到的工具
2. 修改环境变量PATH,在PATH后加上gtk文件夹下的bin文件夹 比如d:\gtk\bin,这样系统就能找到要使用的一些GTK命令了,不过这个在codeblock这种IDE下面应该不设置也没关系。
3,打开codeblock,新建工程,file-newproject,选择GTK+project,输入工程名比如hellogtk,然后会让你选择gtk所在目录即d:\gtk,这里应该有 一步会让你选择头文件和库等目录所在文件夹,我当时没注意直接跳过去了,在后面要配置,
4,工程建好后,会给你创建好一个main.c,里头有类似helloword这样写好的使用GTK写了个对话框的代码,直接编译执行,报错,提示找不到gdk-pixbuf.h文件,这应该死有余codeblock默认给我们配置的include目录不对导致的,在project-》build-option->search directory->compiler下选择add,把gdk-pixbuf.h所在目录加进去.我这里是D:\gtk\include\gdk-pixbuf-2.0\gdk-pixbuf,,再出现类似的问题也同样的方式解决。
4,编译通过后,执行的时候提示 无法定位程序输入点deflateSetHeader于动态链接库zlib1.dll上,网上搜了下,大概是应为我电脑上本来就有一个zlib1.dll,和gtk工具包里带的zlib1.dll版本不同,执行刚刚编译出来的GTK程序时,链接了我原来就有的那个zlib1.dll导致的,于是把gtk目录下的zlib1.dll拷贝到C:\Windows\System32目录下,再执行,OK,开发环境搭建完。
由于大家的系统环境大多不一样,按别人的教程比一定能正常完成。静下心来思考下可能的原因,还是很好解决问题的