我已经将一个现有的Qt4应用程序移植到了Qt5,并在此应用程序中添加了一些额外的(简单)功能。
旧应用程序附带以下文件:
- libgcc_s_dw2_1.dll
- libusb-1.0.dll
- mingwm10.dll
- QtCore4.dll
- QtCored4.dll
- QtGui.dll
现在,从QtCreator中我能够运行我的修改后的应用程序,但是在准备部署时出现了问题。我使用了dependancy walker来检查我的.exe文件并在可执行文件目录中包含了大量的DLL文件。
- icudt51.dll
- icuin51.dll
- icuuc51.dll
- IEShims.dll
- libgcc_s_dw2-1.dll
- libGLESv2.dll
- libstdc++-6.dll
- libusb-1.0.dll
- libwinpthread-1.dll
- mingwm10.dll
- Qt5Core.dll
- Qt5Cored.dll
- Qt5Gui.dll
- Qt5Guid.dll
- Qt5Widgets.dll
- Qt5Widgetsd.dll
- QtCored4.dll
(是的,由于DLL文件,项目大小现在非常大,但在我的用例中这不是问题。)
最后,它没有抱怨缺少DLL文件。尝试执行.exe文件时显示的错误消息是:
动态链接库Qt5Core.dll中找不到过程入口点?testBit@QBitArray@@QBE_NH@Z
我从未尝试在Qt Creator之外执行Qt应用程序,所以我真的不知道该怎么办。
如果有帮助:
在“项目” -> “qmake构建配置”下:发布 -> 有效的qmake调用为:
qmake.exe D:\Product\test_util.pro -r -spec win32-g++
如果需要更多信息来让任何事情更清晰,请在评论区留言。
d
后缀是这个意思。谢谢。 - chwi