如何使用命令行在窗口 10 中设置 Qt5 静态

Posted

技术标签:

【中文标题】如何使用命令行在窗口 10 中设置 Qt5 静态【英文标题】:how to setup Qt5 static in window 10 using command line 【发布时间】:2019-03-10 08:43:52 【问题描述】:

我正在编译动态 Qt5 并成功获取二进制文件。但是当我将我的二进制文件移动到其他编译时,我得到 QT5gui.dll missing Error 。所以现在我想静态设置 Qt5 。也想知道如何设置环境变量请帮帮我。

【问题讨论】:

看看这里:doc.qt.io/qt-5/windows-deployment.html,这也可以帮助你:wiki.qt.io/Deploy_an_Application_on_Windows 【参考方案1】:

可以在这里找到一个很好的指南(静态部署): https://boffinblogger.blogspot.com/2018/12/static-compile-of-qt-5120-using-visual.html

如果您的计算机内核数较少,则运行 nmake/jom 步骤将需要相当长的时间。如果可以的话,绝对使用 Jom 而不是 nmake。

另外,如果您唯一的问题是当您移动动态二进制文件时出现 dll 错误,您需要在 exe 的位置运行 windeployqt.exe(示例路径:C:\Qt\5.12.1\msvc2017_64 \bin\windeployqt.exe)。 打开cmd,cd到你的新程序所在的位置,粘贴你使用的qt版本的windeployqt.exe的路径。

【讨论】:

我正在为 Qt 使用 mingw,我正在尝试使用 QT 5.10.1 在窗口上编译山寨币,并且我已经尝试了 windeployqt.exe,它正在创建文件,但我仍然收到错误 _ZdaPvj could not位于动态链接库\c:\myproject\relase\QT5Core.dll ibb.co/m0393Sn 检查错误我得到了什么我尝试了 windeployqt.exe ... 当我从变量环境中给出 PATH 时,我的二进制文件工作正常,但是当删除它不工作时给出错误,如(_ZdaPvj 无法位于动态链接库 \c:\myproject\relase \QT5Core.dll ) 使用 windeployqt.exe 后 @Awaissakhi 该错误意味着部署的 dll 与您的程序不兼容,我的猜测是这些 dll 用于 msvc 而不是您使用的 mingw 谢谢兄弟,我解决了这个问题。我只是复制并粘贴了我的二进制文件目录中的所有 dll 文件,这样它就可以开始工作了。你的信息很有帮助

以上是关于如何使用命令行在窗口 10 中设置 Qt5 静态的主要内容,如果未能解决你的问题,请参考以下文章

如何通过命令行在 cypress.json 文件中设置环境变量? (Angular CLI - nrwl nx)

在 qt5 中设置链接器选项

如何在centos7系统中设置静态ip地址

在windows中设置环境变量PATH

Qt5,在qlineEdit中设置文本大小

树莓派系统(Debain)中设置固定静态IP地址