QT程序多平台下可执行文件的打包方式

2021年9月12日 2点热度 0条评论 来源: 浇筑菜鸟

一、简述

QT项目开发完成后,需要打包发布程序,在实际生产中不可能把源码发给别人,所以需要将源码打包正可执行文件或者安装程序。

二、设置应用图标

把 ico 文件放到源代码目录下,在QT项目中的'.pro'文件中添加自己准备好的ico文件(使用QT默认生成的图标时,可以跳过这一步)

RC_ICONS = user.ico // user.ico是自己的图标名称

三、打包windows系统下的可执行文件

  1. 以 Release 方式编译生成 exe 程序,也就是使用Release模式调试程序。
  2. 编译完成后会在项目文件下生成一个'build-Qt_hello_word-Desktop_Qt_5_12_9_MinGW_64_bit-Release'文件,在文件release中找.可执行文件
  3. 现在的可执行文件是不可运行的,会提示找不到.dll文件
  4. 创建'QT_test'文件,将生成的.exe文件拷到'QT_test'文件中
  5. 打开MinGW,进入到'QT_test'文件路径下

  6. 在MinGW中使用windeployqt命令打包程序
windeployqt Qt_hello_word.exe


7. 执行完成后文件中会生成很多dll文件,这样我们的可执行文件就已经制作完成了,点击.exe文件就可以直接运行


8. 使用Inno Setup软件可以将执行文件打包成安装软件,在这里我就不过多介绍了,需要的小伙伴可以查看这篇博客,这里我就直接引用一下Qt 程序发布以及打包成exe安装包
Inno Setup软件的下载地址:https://jrsoftware.org/isdl.php

四、打包linux系统下的可执行文件

linux系统下打包成成可执行文件有两种方式,如果系统中安装有QtCreator软件,直接以Release方式编译运行即可生成可执行文件,这里主要介绍一下qmake的使用。

  1. 安装qmake软件
    在linux系统下打包可执行文件需要使用qmake软件,没有安装的可以安装一下
sudo apt-get install qtchooser
  1. 将windows系统下的qt项目拷贝到linux系统下,将.pro.user文件删除

  2. 执行qmake命令生成Makefile文件
  3. 使用make编译生成可执行文件
  4. 运行程序./hello_word

五、打包ARM环境下的可执行文件

打包ARM平台下的可执行文件和linux系统下的方式是一样的,同样的有两种方式,只不过ARM的qmake是qt-everywhere-src-5.12.9源码编译生成的软件,编译完成后在路径'arm-qt/bin'路径下会生成qmake软件,不知道怎么编译的小伙伴可以看我之前的QT之ARM平台的移植

  1. 使用qmake软件的方式编译
    生成Makefile文件并编译
/home/linux/arm-qt/bin/qmake
make


2. 以Release方式编译
在linux中装有QtCreator软件的小伙伴可以在软件中添加arm环境下的qmake软件,直接以Release方式编译即可生成执行文件。
打开 Qt Creator 界面,找到 Tools(工具)→Options(选项)。

按下图步骤,找到ARM平台的qmake。

配置C/C++编译器为 arm-linux-gnueabihf-g++

配置Kits

运行程序

编译完成后将会在项目文件夹中生成ARM环境的可执行文件

参考文献

Qt 程序发布以及打包成exe安装包:https://www.cnblogs.com/ybqjymy/p/13540451.html
QT5程序打包发布,最终生成一个.exe执行程序:http://blog.sina.com.cn/s/blog_96c6e6ef0102zx8y.html

    原文作者:浇筑菜鸟
    原文地址: https://www.cnblogs.com/jzcn/p/15255426.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。