Window下GTK+能不能静态编译进程序啊?

开发基于GTK+或QT的应用程序
回复
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Window下GTK+能不能静态编译进程序啊?

#1

帖子 brglng » 2010-05-21 16:50

如题,在windows下用GTK+写了个小程序,只有一个可执行文件。因为windows不像linux发行版都带有gtk+ runtime,所以发布程序的时候还要带上几十个dll,太不爽了……不没有办法把GTK+这些库静态编译进程序呢?
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#2

帖子 brglng » 2010-05-27 15:34

呃。。。没有人了解么?
头像
naska
帖子: 11
注册时间: 2008-10-19 16:20
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#3

帖子 naska » 2010-06-11 1:04

我也想知道……
钟爱口袋
帖子: 3
注册时间: 2010-06-13 2:43
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#4

帖子 钟爱口袋 » 2010-06-14 9:11

windows主机和Linux主机我都试过多次都是死连接,可能"狗爹"主机不支持吧。
头像
slax
帖子: 1099
注册时间: 2009-08-17 3:52
送出感谢: 0
接收感谢: 1 次

Re: Window下GTK+能不能静态编译进程序啊?

#5

帖子 slax » 2010-06-14 16:06

将dll文件和程序放到一个文件夹里,用winrar的自解压。
附件
未命名.jpg
We believe that the internet should be public, open and accessible.
软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。
iceplayer! linux音乐新体验~ 最新版本4.0.5-20110520已更新!viewtopic.php?f=137&t=252461
想要iceplayer 测试版麼?加入QQ群80071264吧,在code.google也可找到
http://www.iceplayer.org/
http://jasy.ice.blog.163.com/
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#6

帖子 brglng » 2010-06-21 17:41

呃,,楼上这样的话,运行的时候解压出来还是会有一堆文件的哦。。。
我现在觉得挺麻烦呃,即使我静态编译成功了,但程序里还是需要包括很多其他文件,比如theme之类的,而且还不知道如何去摆脱它的路径依赖,默认是一定要按照linux的目录结构来安排,不太符合windows用户习惯,给别人用的时候还要告诉他们到bin目录下面去运行,比较麻烦哦。。。
上次由 brglng 在 2010-06-21 17:43,总共编辑 1 次。
delectate
帖子: 18311
注册时间: 2008-01-09 22:41
送出感谢: 0
接收感谢: 6 次

Re: Window下GTK+能不能静态编译进程序啊?

#7

帖子 delectate » 2010-06-21 17:42

请参考ethereal/wireshark
等gtk程序

大部分都是打包了
头像
wzssyqa
帖子: 4010
注册时间: 2008-04-07 17:36
来自: 泰安人在阜新
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#8

帖子 wzssyqa » 2010-06-21 18:09

gcc 加一个选项 -static
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#9

帖子 brglng » 2010-06-21 18:21

楼上, 这样好像只能静态链接gcc(windows下MinGW)自带的库哦
gtk+官网提供下载的windows版gtk+似乎没有带静态库?难道要自己编译了……
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#10

帖子 brglng » 2010-06-21 18:58

我现在发现可执行文件和dll好像不一定要放在bin目录中。放在软件的根目录下,里面再有etc、lib、share之类的目录,gtk+也可以认出来~
所以现在又有一个问题,gtk有没有方法获得程序的“根”目录的路径?比如我把程序在e:\abc下面,那就要获得程序所在的e:\abc这个路径;若使用了bin目录,那就是要获取程序的上级目录e:\abc,不知道这有什么办法实现哦?因为程序中可能需要用到,读写一些文件。

唉,windows就是麻烦,linux完全没有这些乱七八糟的问题。但因为是要给别人用,而我又偏爱gtk+……
头像
EMAX
帖子: 18
注册时间: 2010-05-04 21:02
来自: 成都
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#11

帖子 EMAX » 2010-06-21 21:30

好像需要.lib、.a文件?不太清楚,好像要编译gtk源码才能得到这种东西吧
头像
wzssyqa
帖子: 4010
注册时间: 2008-04-07 17:36
来自: 泰安人在阜新
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#12

帖子 wzssyqa » 2010-06-21 23:00

没有静态库怎么能静态编译啊,不可能的
头像
赶集人
帖子: 67
注册时间: 2010-10-20 22:23
送出感谢: 0
接收感谢: 3 次

Re: Window下GTK+能不能静态编译进程序啊?

#13

帖子 赶集人 » 2011-04-15 18:50

我也想呀....
brglng
帖子: 198
注册时间: 2008-02-05 20:26
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#14

帖子 brglng » 2011-05-17 13:01

我一年前的老帖被挖出来了。。
已经尝试过在win下编译整个gtk+,过程相当的痛苦……我编译出了一些静态库,但最终没有成功。但是我觉得这也许是可行的。。不过劝大家还是不要尝试静态链接gtk+了。。自己编译整个gtk+的话,维护起来太不方便了。
另外,windows下获取程序所在路径的话直接调用window api...
hangyu
帖子: 26
注册时间: 2007-07-21 14:35
送出感谢: 0
接收感谢: 0

Re: Window下GTK+能不能静态编译进程序啊?

#15

帖子 hangyu » 2011-11-21 11:49

brglng,
发布一个win32平台上的GTK静态库
viewtopic.php?f=162&t=354286
回复

回到 “GTK+和QT”