thr*_*013 9 c++ compiler-construction qt qt-creator mingw32
我的exe在我编程的计算机上运行完全正常.它调试很好,发布很好,我可以将exe文件从'release'文件夹移动到一个新文件中,从C:\ pathtoqt\ming47_32\bin找到所需的.dll文件,它仍然运行正常.但是,当我尝试在包含.dll文件的另一台计算机上运行此程序时,我无法执行此操作并且我得到"应用程序已请求运行时以不寻常的方式终止它".
我在2台Windows 7计算机和1台Windows XP上测试了这个.我使用了依赖walker并下载了一堆.dll,它仍然没有用.我设法让所有的dll成为"找到"状态或"红色"状态.
构建设置:http://puu.sh/3qTV3.png
我使用的是Qt5.0.2,mingGW 4.7 32bit.
我也偶然发现了这个... http://puu.sh/3qU6j.png
It'*_*ete 10
这些计算机很可能没有您的程序正在使用的一些必需的Qt库.请参阅此处的教程:http://doc.qt.io/qt-5/windows-deployment.html
另一个简单的检查是在另一台计算机上安装Qt,移动.exe并查看它是否运行.如果是这样,您肯定没有正确部署您的应用程序.
编辑添加这个有用的链接,因为这似乎是人们看到的完全相同的问题:https: //bugreports.qt.io/browse/QTBUG-28766
如果安装了cygwin,则可以运行ldd <your_app.exe>并查看应用程序所需的库列表.执行此操作后,将您的exe复制到另一个文件夹和库所需的库.
对于LGPL许可证应该没问题,但我不是律师,所以请咨询一些熟悉法律问题的聪明人.
您正在部署mingw编译的应用程序,除了应用程序中使用的Qt-DLL之外,还需要提供以下DLL文件:
icudt51.dll
icuin51.dll
icuuc51.dll
libstdc++-6.dll (eventually)
platforms/qminimal.dll
platforms/qwindows.dll
libgcc_s_dw2-1.dll (eventually)
Run Code Online (Sandbox Code Playgroud)
这些可以在SDK安装中找到的mingw目录中找到.
支持的DLL适合编译器版本也很重要.
| 归档时间: |
|
| 查看次数: |
4073 次 |
| 最近记录: |