• 3519阅读
  • 2回复

[提问]发布QT4.86的exe文件,到底需要哪些DLL? [复制链接]

上一主题 下一主题
离线stlcours
 

只看楼主 倒序阅读 楼主  发表于: 2014-09-02
我使用VS2005在win7 x64平台下编译的win32工程,使用Qt4.86,发布需要哪些DLL


我用VS2005创建了一个空的Application工程,代码就这些:

#include "qt4_pure.h"
#include <QtGui/QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    qt4_pure w;
    w.show();
    return a.exec();
}
编译后得到exe,经测试,exe文件拷贝到本机的另一个目录,只需要QtCored4.dll和QtGuid4.dll就可以运行。
然而拷贝到别的新机子(是XP),无论加上多少DLL文件,都死活无法运行。
我不需要什么静态编译,能够带上DLL运行就可以啦!我也看了一些网上的文章,并且使用Dependency Walker查看依赖关系,为什么它会依赖MSJAVA.DLL(如图)(整个系统里都搜不到这个文件!)和64位的MSVCP100D.dll和MSVCR100D.dll?

如果问题太复杂,那么简而言之,一个使用VS2005编译的qt4编译的exe文件,到底需要哪些DLL才能运行?

离线彩阳

只看该作者 1楼 发表于: 2014-09-02
你所使用的全都是调试版。
上海Qt开发联盟,热忱地欢迎你的加入!
离线stlcours

只看该作者 2楼 发表于: 2014-09-02
还真是,改成Release就好了。只需要QtCore4.dll和QtGui4.dll即可。
但是为什么调试版就不能发布呢?我把所有文件都一起拷贝过去还不行吗?
快速回复
限100 字节
 
上一个 下一个