Windeployqt找不到所有依赖项

时间:2017-01-10 23:00:06

标签: c++ qt

我在发布模式下构建了我的Qt项目并拥有.exe文件。我正在使用Qt 5.7 32-bit for Desktop (MSVC 2015) cmd并正在运行C:\Qt\5.7\msvc2015\bin\windeployqt.exe my_app.exe

但是在运行它时,windeployqt找不到所有依赖项。我得到了这个输出。

Adding Qt5Svg for qsvgicon.dll
Direct dependencies: Qt5Core Qt5Gui Qt5Widgets
All dependencies   : Qt5Core Qt5Gui Qt5Widgets
To be deployed     : Qt5Core Qt5Gui Qt5Svg Qt5Widgets

当我尝试运行.exe文件时,我仍然遗漏Qt5Network.dllQt5xml.dllQt5XmlPatterns.dllQt5WebEngineWidgets.dllQt5WebEngineCore.dll和{{1 }}。它也缺少Qt5Quick.dlllibeay32.dll

在我的.pro文件中,我有ssleay32.dll

我一直在寻找解决方案,即使我可以手动复制粘贴它们也可以使用-network -xml等工作或添加它们,我想看看是否有办法将所有依赖项添加到一起

1 个答案:

答案 0 :(得分:0)

序言

我认为class RegistrationForm(forms.ModelForm): password=forms.CharField(widget=forms.PasswordInput) class Meta: model=User fields=['username','email','password'] class LoginForm(forms.ModelForm): password=forms.CharField(widget=forms.PasswordInput) class Meta: model=User fields=['username','password' 目前尚未尝试部署windeployqtlibeay32.dll,因为它们不在ssleay32.dll中(但是,它们位于{{}} 1}})

如果c:\Qt\5.8\mingw53_32\bin\无问题地工作,那么c:\Qt\Tools\mingw530_32\opt\bin\部署所有Qt DLL而没有任何参数。

不幸的是,windeployqt仍然很迟钝,因为有时它不会创建必需的内容并且无法创建。

所以你可以添加必需的(例如windeployqt ./)并跳过创建的无用(例如windeployqt):

--core

更多package_name和命令 - https://doc.qt.io/qt-5/windows-deployment.html

答案

您可以创建变量QT的qmake-parser,将--no-svg添加到包名并插入windeployqt-command:

windeployqt --compiler-runtime --core --gui --network --widgets --winextras --no-svg --no-system-d3d-compiler --no-translations --no-opengl-sw --no-angle ./