
我使用QT5.0.1写的程序在自己有安装QT的电脑上能正常运行,但在没安装QT的电脑上会出错,我把BIN 5
里面所有库的DLL都放过去也不行,同样一包资料,放到安装过QT的电脑上就运行正常,请问哪位大神有遇过,可以告诉我还缺少什么文件吗?...
里面所有库的DLL都放过去也不行,同样一包资料,放到安装过QT的电脑上就运行正常,请问哪位大神有遇过,可以告诉我还缺少什么文件吗?
展开
展开全部
缺少这个libEGL.dll,拷到程序目录,问题解决,我也遇到相同问题,就这样解决了,此外,还要在部署目录里建立platforms目录,并在platforms放入qminimal.dll和qwindows.dll两个文件,程序才能运行。
展开全部
哥们,我也遇到和你一样的问题,下载了Qt5.0.1版本,编译生成的EXE文件在别人的机子上跑,出现和你一样的问题。纠结了好几天都搞不定,应该不是缺少某个文件那么简单,我把编译好的exe程序放到bin目录下,连同bin目录一起拷到别人电脑也不行。我也不打算用静态编译,小小的程序如果弄个几百兆出来吓人,我查看了Denpend Walkey工具依赖库,里面也没什么特别提示缺少的,该拷的DLL文件也都拷到执行目录下,可是放在别人电脑上就是出现Runtime Rrror!。百度上知道的也基本上围绕着动态库没拷或者什么的,根本解决不了问题啊!我看过有人说可以运行的例子是用QT+VS2008编译,生成的程序可以在别人的机子上跑,只是环境不好搭建。我现在还束手无措,有解决方案互相告知啊!【本人已解决该问题了,在VS上装个QT开发的exe就不会有这个问题了。】
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为你链接的是qt的动态库,在没有qt动态库的系统上肯定是运行不了的。
有两种方法,一种是静态编译,但会让运行文件变大。
第二种就是把动态库和程序一起打包出去,路径设置好就可以,但会让安装包变大,自己权衡咯。
我推荐静态编译,因为一般的系统上都没有qt链接库。
有两种方法,一种是静态编译,但会让运行文件变大。
第二种就是把动态库和程序一起打包出去,路径设置好就可以,但会让安装包变大,自己权衡咯。
我推荐静态编译,因为一般的系统上都没有qt链接库。
追问
我不打算用静态编译,这样下来EXE太大了,所以我才想用动态方式,我在已经安装过的电脑上是可以运行的,只不过一定要把动态库文件放到执行文件的相同路径下,但是在没有安装QT的电脑上就会出错,我估计是运行时还要调用其它的东西,可能是安装时产生到system32下的文件,我没办法试这么多文件,所以请各位知道的大神帮忙指点指点具体还要一些什么库?
追答
就是要依赖你的qt的DLL文件啊
你看一下以构建时链接了哪些lib
就把对应的DLL文件打包一起发布就行了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
嗯,Qt还有plugin文件夹,该文件夹在你的Qt安装目录下,此时需要复制plugin里面的platform文件夹,如果程序用了图片的话可能还需要plugin里面的图片相关文件夹(具体名字忘了)声音也一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-02-17
展开全部
这很明显的不是QT库的问题啊,是微软C++运行库的问题,编译环境的差异造成的吧,有些系统不会出一些问题,另一些会有,通常都是你自己的程序内部存在内存泄露了、访问越界了什么的问题。
追问
我只是建了一个新工程而已,还没写任何进去,应该不会有内存泄露的。我猜应该是还要在运行程序中加入一些文件,只是还不确定是哪些。
追答
不是的,肯定是你的库版本或者编译版本的问题,如果缺少文件,windows会提示无法定位或者无法装入或者是丢失某某文件的警告,而现在的警告是异常结束,肯定是出现内部中断造成运行库终止的问题。你确定你拷贝过来的库能在此系统环境下正常运行?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询