用QT做的软件,debug版本正常,但是Release版本就死掉了,会是什么原因?

用QT做的软件,debug版本正常,但是Release版本就死掉了,会是什么原因?,第1张

应该罩败是相关的动态库(Qt*.dll)存在多个版本引起的,

QT4在不同版本发布的动态库的文件名都是一样的,

比如4.1.4和4.4.3的都敏闷空是QtCore4.dll,

但实际的版本不一样会出现这样的问题.如果Debug版本的程序运行没有问题,

也就说明Debug版本的动态库没有上述的版本冲突的问题,

而是Release版本的动态库存在着版本冲突.

这是因为绝大部分软件发布时只带着release版本的程序,

而不会发布debug版本的程序.最好的办法是搜索一下硬盘内有多少目录下桥瞎有qt的动态库

最有可能的问题是,你本机的的其他程序用到了其他版本的qt,并将含有qt动态包的路径设置在系统的path环境变量中,debug和release时寻找qt动态包的目录遍历顺序不一致,所以debug时调用你想要的qt动态包,而release程序执行时加载了别的版本的qt动态包,建议在系统内搜一下

原因可能有以下:

1、首先考枣野虑段缺第三方库没有配置好,如果用的库是动态库,运行握岩辩时要把相应库的dll放在程序运行目录下。

2、如果不确定缺什么库,转到运行目录下直接点击试试能不能运行,将相应库补齐。

3、其次就是看程序有没有段错误,查看数组有没有越界等。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12356753.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存