上次说到,安装都已经OK了,写了个小程序,也可以运行出结果,Android手机上也测试成功了,可上次所测试的都还只是 调试 的过程,距离打包成一个独立可用的应用程序还差一些。这次就配置一些打包需要配置的参数和打包过程。还有就是 x64 和 x32 的所有过程都一样,我只做 x64 的过程,x32 的就省略了,如果有遇到什么问题再进行探讨。


  • 系统环境配置
  • 安卓包 .apk s的生成步骤
  • Windows 包 .exe 的生成步骤

以下所写的过程均为自己实际操作的过程


首先我们看一下上次说的,确实已经有小程序那意思了,其实也已经生成的 .apk 和 .exe 的包了




首先我们看安卓的,如下图,其实细心的人已经发现了,安装包已经安装到手机上面了,虽然很丑,但是这已经是OK的安装包了,可以手动备份给其他的手机使用了

或者打开项目目录,这是我的目录,比较长,我就不一个个截图了

D:\project\program\Qt\test0\

build-Tese0-Android_for_armeabi_v7a_arm64_v8a_x86_x86_64_Clang_Qt_5_14_2_for_Android-Debug\

android-build\build\outputs\apk\debug

最终可以看到这个 android-build-debug.apk 文件,这就是安卓的安卓包了。




然后我们使用相同的方法,打开目录:D:\project\program\Qt\test0\

build-Tese0-Desktop_Qt_5_14_2_MinGW_64_bit-Debug\debug

可以看到,该目录下也存在 .exe 的文件,我们尝试运行一下,大概率是会失败的。

结果。。。。。。,也有可能大家提示的错误不一样,这是因为有些环境变量没设置好,下面就开始环境变量的添加。




环境变量:https://baike.baidu.com/item/%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F,具体是啥,我也不太清楚,想了解的同孩可以自己查找。


设置步骤: win + r 打开运行,输入 sysdm.cpl 回车,接着点击  高级 → 环境变量 ,如下

双击 Path

打开QT的安装目录,细心的同孩应该发发现我的安装目录变了,上次是装在C盘的,后来,装的环境太多了,导致C盘爆了,后来装 JDK 还一直不成功能,于是我又卸载重新装在了E盘,不过这都不影响,打开  E:\Qt\Qt5.14.2\5.14.2 可以看到里面的前三个文件夹,这就是这次要用的的,虽然 Android 的 不用弄也可以生成安装包,但是添加一下,后面有些 CMD 命令可以方便使用。




我们先打开  E:\Qt\Qt5.14.2\5.14.2\android\bin 复制一下这个目录,记得打开自己的目录,

双击 箭头所指的空白处

把刚才的目录复制进来


同样的方法 把目录  E:\Qt\Qt5.14.2\5.14.2\mingw73_32\bin

E:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin 也添加进去。确定之后退出设置页面。


再次打开目录

D:\project\program\Qt\test0\build-Tese0-Desktop_Qt_5_14_2_MinGW_64_bit-Debug\debug

再次双击打开应用程序,注意这是64位的

可以正常打开了




按照使用的角度来说,已经没问题了,那么我们深入想一下,为什么刚才提示错误,我添加了目录就好了。

我们先看一下刚才的第一个提示,由于找不到  Qt5Widgets.dll ,无法继续执行代码,重新安装程序可能会解决此问题。重点在前面,缺失了 Qt5Widgets.dll 这个文件,我们打开刚才添加到环境环境变量的 64位 的目录 E:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin

然后在该目录里搜索 Qt5Widgets.dll 这个文件,可以看到这里面有,所以明白了吗,其实把这个目录添加到环境变量,这里面的一些文件(主要是库文件),就可以下程序运行的时候在这里面找需要的文件,那在Qt里面调试为什么可以呢,这是因为这本来就是Qt 安装目录里面的东西,Qt在调试的时候回调用这些目录的文件。

可以看到,libgcc_s_seh-1.dll也在这个目录里面




如果想安卓的一样,把这个 .exe 的文件发送给别人,比人可以用吗,如果他的电脑也有装 QT ,而且像我们一样添加了环境变量,那么是可以的,但是一般使用的人,谁会装QT呢,所以还要有个打包过程,把这个程序需要的文件打包在一个文件夹里面。


首先,工程这里要设置一下,Debug → 选择 x64 位 → Release  →运行,

看到调试运行正常


打开项目工程的目录,D:\project\program\Qt\test0 ,选择结尾单词为 Release 的文件夹

打开下面的 release  文件夹,把相应的 .exe 文件复制出来,然后

我复制出来,放在了工程目录下的新建文件夹  release 里面了

在开始菜单找到QT软件下面的 win64位命令行 打开,注意不要用

如下图所示,输入命令 windeployqt  并把准备好需要打包的程序拖进来,

可以看到命令窗口显示了一大堆东西,

同时目标文件夹中多了很多东西,

至此,Qt所有的工作都做完了,这个软件可以在别的电脑上运行了,如果谁想用,就把 release 文件夹发给他,这个文件夹中包含了运行所需要的所有库,没错,这就是完成了免安装绿色软件的制作。



如果 windeployqt  这个单词记不住的话,可以去刚刚添加到系统环境变量的那个目录下去找




可能有的小朋友还想进一步把这些文件打包成一个安装包,这就不是Qt所能做的了,可以使用 HM Nis edit来完成

请参考这篇博客,https://blog.csdn.net/signjing/article/details/7855855




纪律是自由的第一条件

---------------------江湖夜雨飘零客,2020年9月28日15:42:53

入坑QT3之安装之后的系统环境配置和程序打包过程------主要是程序打包之后出现各种文件缺失问题相关推荐

  1. eclipse安装和jdk环境配置(新手详细过程)

    eclipse安装和jdk环境配置,整个过程分为以下几步: 1.jdk的下载安装以及环境变量设置:(jdk安装). 注:目前jdk里面已包含jre,所以不需要进行jre的安装. 2.Eclipse的下 ...

  2. gulp入坑系列(1)——安装gulp

    前言   好吧,我承认我是为了搞定Sass编译CSS文件的问题,迷一样的着手入gulp的坑,sass和gulp的爬坑历程大概会一起更新.然后感觉这里windows和mac的流程差不多,不过mac的通常 ...

  3. 树莓派 docker homeassistant_树莓派raspberry4B入坑指南 part-4 安装docker-ce 19.03

    前言 安装教程参考的官网debian章节,有针对raspbian的讲解. 在文中有这么一句话: Raspbian users cannot use this method! For Raspbian, ...

  4. RFID入坑初探——Mifare Classic card破解(一)

    redrain有节操 · 2014/05/25 14:29 0x00 前言 之前一直想要玩无线安全,旺财大牛说门槛低(哪里低啦=.=web狗表示我很笨啊,汪汪),于是乎入手了ACR122u,想从NFC ...

  5. Linux从零开始到入坑

    一.服务相关命令 1.启动服务:systemctl start 服务名称: 2.重启服务:systemctl restart 服务名称: 3.停止服务:systemctl stop 服务名称: 4.查 ...

  6. 在office2016中,安装mathtype6.9后出现的dll文件缺失问题

    在安装使用mathtype过程中,常会遇到一些问题,如MPlugin.dll 文件缺失,mathtype dll文件不能找到,放心,这不是电脑问题. 本人电脑配置,win10 64位,office20 ...

  7. JDK的安装与环境变量配置详细教程

    JDK的安装与环境变量配置详细教程 JDK是开发java程序必备的开发工具包,要想做java程序开发,那么就需要装jdk.下面跟大家分享下jdk安装和环境变量配置的详细过程. 下载jdk 首先先去下载 ...

  8. Centos7安装JDK8以及环境配置

    下载 下载网址:JDK下载链接点这 选择与自己系统相匹配的版本,我的是Centos7 64位的,所以如果是我的话我会选择此版本,要记住的你们下载的话选择的是以tar.gz结尾的. 安装 演示使用jdk ...

  9. cuda nvcc版本不一致_入坑第一步:Win10安装cuda+cuDNN+TensorFlow-GPU走过的那些路

    这两天安装tensorflow-gpu被折腾够呛,幸亏最后成功了,给想要安装的大神们看下我走过的坑,避免掉入. 如果是新手,需要安装下面几个软件: 第一步 安装anaconda 首先就是Python编 ...

最新文章

  1. 国科大回应:博士生每月不低于4300元!
  2. 从0开始构建Arduino_STM32
  3. 平台积分体系设计方案
  4. python各版本区别_关于python中不同版本的print区别
  5. Spark运行命令示例
  6. 元素的水平垂直居中解决方法
  7. ubuntu16.04下ROS操作系统学习笔记(九)Moveit
  8. 再谈“颠覆”冯.诺依曼计算机体系结构 —— 计算机的未来发展方向:去内存化...
  9. Matlab连接字符串的方法
  10. 手机计算机字体变大,手机字体怎么调大
  11. opensips搭配rtpengine实现sip信令和rtp流的代理
  12. 数字图像处理:时域、频域和空间域
  13. 英语语法---形容词详解
  14. 总结2019,立2020flag
  15. android屏幕亮度自动调节解析
  16. easyExcel导出文件为空解决
  17. 无线网卡SP-WL450U的驱动问题
  18. 掘金100道(2)['1', '2', '3'].map(parseInt) what why ?
  19. redis 修改默认端口号6379(Windows)
  20. 《禅与摩托车维修艺术》骑行路上的哲学思考

热门文章

  1. python字典怎么增加元素_Python字典(dict)增加元素
  2. 教你如何理解DSP、SSP、RTB、ADX名词
  3. 反射模式python
  4. 正整数n分解成若干个个不同的自然数之和,使得乘积最大
  5. 游戏建模师日常工作内容包括哪些?
  6. 江苏小高考计算机知识点,江苏化学小高考知识点全
  7. 微信零钱明细删除后服务器有记录吗,微信零钱明细怎么删除记录?教你微信零钱明细记录如何删除...
  8. 安徽工业大学计算机学硕,安徽工业大学计算机科学与技术学院几年制
  9. TMS320F280049C 学习笔记19 可配置逻辑块 (CLB) 软件配置
  10. 前端CSS学习之路-css002