gpt4 book ai didi

windows - 为什么 windeployqt 输出不需要的文件,我怎样才能摆脱它们?

转载 作者:可可西里 更新时间:2023-11-01 11:45:28 26 4
gpt4 key购买 nike

我被告知“windeployqt”实用程序,它应该能够收集正确运行我的 Windows Qt 应用程序所需的所有 Qt/MinGW DLL。所以我试了一下。

不幸的是,我注意到它收集的文件比必要的多。我将 windeployqt 实用程序收集的文件与“Dependency Walker”报告的文件进行了比较。真正需要的文件已正确收集,但由于某种原因还收集了以下文件:

Qt5Svg.dll
iconengines\qsvgicon.dll
imageformats\qdds.dll
imageformats\qgif.dll
imageformats\qicns.dll
imageformats\qico.dll
imageformats\qjp2.dll
imageformats\qjpeg.dll
imageformats\qmng.dll
imageformats\qsvg.dll
imageformats\qtga.dll
imageformats\qtiff.dll
imageformats\qwbmp.dll
imageformats\qwebp.dll

该应用程序仅处理 QBus 并使用 QWidgets 显示一个简单的窗口。因此,我认为没有理由收集这些 DLL。

最佳答案

DLL 未被 Dependency Walker 列出的事实并不意味着它不是必需的。

Dependency Walker 只会列出 Windows 加载和启动您的 exe 所需的 DLL。但是其他 DLL 可能会在您的程序运行时加载。这种情况尤其发生在 Qt 加载类似 image format plugins 的插件时。

因为无法预先知道需要什么插件,windeployqt 部署所有 Qt 插件(所有这些都与所需的 DLL 相关)。

您可以使用 --no-plugins 等命令行修饰符来改变 windeployqt 的行为方式(请参阅 windeployqt -help)。

可以看看Qt for Windows - Deployment在 Qt 文档中,特别是关于 Qt Plugins 的部分.

关于windows - 为什么 windeployqt 输出不需要的文件,我怎样才能摆脱它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46729307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com