Qt - 如何将 Qt 运行时 DLL 复制到输出路径
Posted
技术标签:
【中文标题】Qt - 如何将 Qt 运行时 DLL 复制到输出路径【英文标题】:Qt - How to copy the Qt runtime DLLs to the output path 【发布时间】:2015-07-08 17:30:33 【问题描述】:我需要在构建时将 Qt 运行时 DLL 库复制到输出路径。 我做了很多搜索,找到了很多主题,但没有一个有帮助。
【问题讨论】:
对我来说复制和粘贴效果很好:D 在@techneaz 回答我的问题之前,我什至不知道 DLL 在哪里...... 你本来可以这么问的! :D 我认为这样做是一种“简单的方法”,而不是手动进行。 您可以安装一个名为 listary 的应用程序。可以帮助你快速找到dll。 【参考方案1】:最方便的方法是使用The Windows Deployment Tool 来部署您的应用程序。 Windows 部署工具可以在QTDIR/bin/windeployqt.exe
中找到。它会自动将所有必要的 dll 文件放在您的应用程序目录中。
打开您的命令提示符并将路径添加到您的 Qt 目录,它是 bin
文件夹到 PATH
变量,如:
set PATH= path\to\Qt\bin
接下来以您的应用程序路径作为参数运行 Windows 部署工具:
windeployqt.exe <path-to-app-binary>
这样您可以确保部署的应用程序可以在任何计算机上运行,并且您已包含任何必要的内容。
【讨论】:
【参考方案2】:在发布模式下编译您的项目
找到运行应用程序所需的库
对于 Qt 的标准安装,库可以在
中找到[Qt 安装目录][Qt 版本的文件夹名称][文件夹名称 与编译器类型]\bin
示例:Qt 5.3 安装在 C:/Qt 和 mingw4.8.2 32 位编译器,.dll 文件将在 目录:
C:\Qt\5.3\mingw482_32\bin
要找出您需要的库,您可以运行 应用程序外部 Qt Creator(缺少的.dll 文件将显示在弹出的错误消息中)或者您可以使用名为 dependency walker 的程序。
将这些 .dll 文件复制到具有 .exe 的发布文件夹中 您的应用程序示例:Qt5Core.dll、Qt5Gui.dll 等。
一旦您拥有所有必需的 .dll 文件,您就可以在 Qt Creator 之外运行您的应用程序。
【讨论】:
以上是关于Qt - 如何将 Qt 运行时 DLL 复制到输出路径的主要内容,如果未能解决你的问题,请参考以下文章