使用Release
模式编译后,release
的目录下包含
Hello1.exe
可执行程序。如果我们需要发布这个程序,那么还需要
QT
的运行库,包括哪些呢?拿一台干净的机器一个个试,终于把这些
Qt
库给找出来,成功运行
QtCore4.dll
QtGui4.dll
mingwm10.dll
libgcc_s_dw2-1.dll
其中要特别注意的是,这些文件应该从
Qt
安装目录下的
[QT安装目录]\qt\bin
子目录中获取,因为[QT安装目录]\bin
也有同样的文件,但是无效。这里仅限
Windows
系统,其他非
Windows
系统尚未研究。不过也碰到一个小问题,
Hello1
程序中有这么一行代码:QStringgbk_msg=codec->toUnicode("你确认要退出HelloQt程序吗?
希望回答对您有帮助.
对于一些初学Qt的人来说,在软件里面可以运行里面的程序进行调试,但是想炫耀一个自己的劳动成功,给别人看看,就不行了,把.exe文件拷贝给别人,别人无法运行。
如果想运行这个编译成功的软件,你可以这么做
方法一:把编译成功的.exe文件放到你QT的安装目录下,例如:C:\Qt\2010.05\qt\bin,这样点击可以运行(软件运行依赖环境的)
方法二:在C:\Qt\2010.05\qt\bin这个路径下面,把软件需要的基本动态链接库文件拷贝到你的release目录下面
MINGWM10.DLL
QtGui4.dll
QtCore4.dll
phonon4.dll
方法三:比较笨哈,就是把C:\Qt\2010.05\qt\bin下面的动态库全部考到一个文件夹中,然后看着删,删除了不能运行的就留下,最后剩下的
就是必要的动态库文件了。
这个得看你软件里面用到了哪些控件,哪些功能,基本的就是这3个动态文件,如果有别的,你拷贝一下就可以了。
第二种方法简单,但是得看你的软件用那些服务了,如果用数据库,就得把数据库QtSql4.dll的动态库加入到里面去,如果用网络了,再
把网络QtNetwork4.dll等动态库加入到里面去,这么说,大家应该都懂得了吧。
这样就可以运行了。但图片文件还是可能显示不出来,解决办法:
把程序文件夹里,建立一个imageformats目录(必须是这个名字),把qt目录下的plugin/imageformats目录下对应的dll文件copy过去。这样动态连接就完成了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)