QT打包

使用对应编译器下面的windeployqt.exe来打包,否则7b错误

比如用mingw73_64编译的程序,就得用他下面的windeployqt.exe工具来打包

 

缺少dll,可以去复制到本目录下来

打开“启动任务管理器”中的“性能”的资源管理器中的“CPU”,选定exe,查看“关联的模块”,完整路径为你的exe程序使用到的dll库!!!首先查看QT的dll与windeployqt.exe发布的文件夹中的文件是否缺失,然后查看system32中的dll复制到发布文件夹中!我测试了一下,发布的exe可以运行了!!!具体缺哪个dll得看自己的工程了!!!

Qt 程序打包指的是找到可执行文件运行需要的所有动态库文件,并将它们统一存放到指定的空文件夹里。以下是一些常见的 Qt 打包方法和相关教程: ### 手动发布 在桌面新建一个文件夹,例如`hello`,将`debug`或者`release`文件夹下需要打包的`exe`文件拷贝至桌面`hello`文件夹。在 Windows 左下角搜索栏搜索 QT,打开`Qt 5.12 for Desktop(MinGW 7.3.0 64-bit)`(此处 Qt 为自己电脑里的 Qt 版本),切换至桌面`hello`文件夹,使用命令`cd C:\Users\XXX\Desktop\hello`,输入`windeployqt 打包名.exe`,例如:`windeployqt strsvr_qt.exe`,此时点击`.exe`文件是可以运行的。若打包后的`exe`文件移动到其他文件夹不能运行,提示`Cannot load libraryQt5Core.dll`,将 Qt 安装目录`\mingw73_6\bin`下所有`dll`文件拷贝至桌面`hello`文件夹中重新打包打包可以运行后此时`exe`文件将会很大,每次去掉第七步的一半`dll`文件,重复第七步,直至最小化文件。还可以打开 Enigma Virtual Box,在第一个选项栏中将需要打包的`exe`文件选中,点击打包即可。Enigma Virtual Box 阿里云盘下载连接为:https://www.aliyundrive.com/s/887BdSHPmP7 [^3]。 ### 命令行操作 在“开始”菜单中选择点击相应选项,右侧将弹出命令行,根据命令进入到新建文件夹,如`D:/packge`,最后执行命令`windeployqt SmartQT.exe`完成依赖文件的抓取 [^5]。 ### 注意事项 如果封装后运行提示缺失`qt6core.dll`文件,可能是缺失`libgcc_s_dw2-1.dll`,`libwinpthread.dll`,`libstdc++-6.dll`这三个动态库,为 C++和 gcc 编译所需的库。需要在 Qt 安装目录中如`Qt5.12.0\5.12.0\mingw73_64\bin`(版本不同目录不同)找到对应的文件夹,然后在增加文件夹递归时再增加个相应的文件夹 [^4]。 示例代码(简单的 Qt 程序,用于演示如何将程序打包成`exe`文件): ```cpp #include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QPushButton btn("Hello World!"); btn.show(); return app.exec(); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值