Windows 玩 GTK + Glade

这个主题在网路上应该可以找到,但是如果你有用StarDict这个免费的字典的时候,相信你会开始很难找到答案,而我历经了好几天的Google搜寻及测试,终于让我使出来了,解决这个问题令人高兴ㄚ。

首先,如果你下载的版本太旧铁定会碰上如下图的错误讯息:

2008-03-12_102237.png
好死不死,glade for windows的一些版本会强制安装GTK runtime的版本,所以就会跟StarDict相冲!
找了很久英文的文章无解,最后这一篇

Gtk+, Glade, GtkGlExt all in one Windows installer

帮助我们克服版本相冲的问题。

高兴了没多久回到Dev-C++后,发现了新的问题

2008-03-13_105238.png
我的Dev-C++是没有 Mingw的,所以只好重灌Dev-C++有 Mingw的部份,才解决这个问题,可是玩了一会又觉得Dev-C++没支援Unicode的部份,打中文很不方便,只好回到eclipse来玩。

但是之前所做的设定是不够的,而安装的gtk_installer.exe他是用来执行用的,在开发环境中还是有欠缺,所以重回 http://www.gtk.org/download-windows.html下载libglade需要的部份标头档及函式库。

我用Foundations of GTK+ Development第10章的browser.c及browser.glade来编译,会一直产生
“libglade-WARNING **: could not find signal handler”之类的错误,有人说是连结编译时没有加-export-dynamic参数,但是我的却不是这个问题,最后还是Google到回呼函式前要加G_MODULE_EXPORT,最后编译才成功!

我把改完的browser.c放上来请大家参考!