QT for Android安卓编译环境搭建+首次编译3个大坑

1、安装

编译环境能否搭建成功,主要是看各个依赖软件的版本是否匹配。依赖的软件有3个:JDK、安卓SDK、安卓NDK。

我的qt版本是5.14.1,我亲测以下版本可以成功让编译安卓:

QT5.14 + JDK1.8.0 + 安卓SDK26.1 + 安卓NDK20.1

在QT->工具->选项,打开如下窗口后,点击设备选项卡,如下所示,填入以上3个软件的安卓位置,如果版本匹配,下图会看到两个绿色的对号。

然后点击上图的Kits选项卡,如下图所示。可以看到安卓编译器已经没有黄色感叹号了,就说明配置成功了。

2、大坑

2.1坑1

接下来是一个大坑,上图我用红框标出的名称,又长又含空格,事实上编译过程中会因为这个名字过长而报错,且报错的文字跟名字过长毫无关系,让人无法得知报错的原因,我把名字给他剪短后,就编译过了。如下图所示。

2.2 坑2

当你编译完一个程序烧录到手机以后,修改了一些代码,再次编译烧录,发现修改的代码没有生效,原来qt又把你上次编译出的apk给少进去了,简直无语。

每次出现这种情况时,你都需要点击QT左侧的项目,然后右击android编译器,选择disable,如下图

然后再次点击android,点击下图的build,再选择debug或release。注意,这一步的每个操作都要等下图所示的debug按钮亮起来之后,再做下一次点击。不然还是有概率编译出问题,原因未知。

2.3坑3

经常性的打开安卓工程文件时,qt会卡死。首先用任务管理器关闭卡死的qt,然后删除pro工程文件同目录下的.pro.user文件、以及build-xxxxxxxx这整个安卓编译目录,然后再启动qt,打开工程,再做一遍前文所述的大坑1,就好了。

有时按以上步骤做重启qt还是会卡死,这时你需要重启电脑后,再做以上步骤才能生效。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/282752.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS开发实战:如何实现一个运动排名榜页面

HarmonyOS开发实战:如何实现一个运动排名榜页面 代码仓库: 运动排名榜页面 项目介绍 本项目使用声明式语法和组件化基础知识,搭建一个可刷新的排行榜页面。在排行榜页面中,使用循环渲染控制语法来实现列表数据渲染,…

Redis Cluster集群搭建 三主三从

Redis包下载 Linux: http://download.redis.io/releases/ Mac or Windows: https://redis.io/download/ 2.下载后解压进入文件夹(本次我的Redis版本是6.2.14版本) /redis/redis-6.2.14 开始安装 make instarll修改配置文件复制redis.conf 6…

添加E1000网卡进行测试,只有VMXNET3性能的四分之一

正文共:1444 字 14 图,预估阅读时间:2 分钟 我们前面介绍了VMware ESXi 6.7中的适配器类型性能(VMWare ESXi中,不同的虚拟网卡性能竟然能相差三倍!),当时的配置项主要为E1000e和VMXN…

设计模式——结构型

1.装饰器模式 要素:装饰器,装饰对象 为待装饰对象中某一结构特征添加内容,而不是新建一个特征 /*** 装饰对象*/ public interface Shape {public void draw(); } /*** 具体装饰对象*/ public class Circle implements Shape{private String…

基于Java SSM框架实现水果销售网站系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现水果销售网站系统演示 摘要 21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识&a…

Java语法之Object类

Object类时Java默认提供的类,是所有类的父类,它里面有好多便利的方法供我们使用 1.equals对象比较方法 在我们看来,姓名年龄一样就应该是同一个人,但实际上运行结果却是false,看一下源码: 源码里面是在用俩…

MDK编译过程和文件类型

MDK是一款IDE软件,具有,编辑,编译,链接,下载,调试等等的功能。 1.编译器介绍: MDK可以编译C/C文件和汇编文件,MDK只是一款IDE软件,那他内部使用的是什么编译器呢&#x…

Google Gemini 模型本地可视化

Google近期发布了Gemini模型,而且开放了Gemini Pro API,Gemini Pro 可免费使用! Gemini Pro支持全球180个国家的38种语言,目前接受文本、图片作为输入并生成文本作为输出。 Gemini Pro的表现超越了其他同类模型,当前版…

便签类工具有哪些?比较好用的便签工具用哪个

便签类工具比较多,每个人使用便签的用处不同,有些人用便签当做记事本来记事,有些人借助便签工具来记录转瞬即逝的灵感,还有些人使用便签来记录学习笔记,还有些人用便签罗列工作计划...... 你是否也在和其它人一样寻找…

学习Java第70天,过滤器Filter简介

过滤器概述 Filter,即过滤器,是JAVAEE技术规范之一,作用目标资源的请求进行过滤的一套技术规范,是Java Web项目中最为实用的技术之一 Filter接口定义了过滤器的开发规范,所有的过滤器都要实现该接口 Filter的工作位置是项目中所有目标资源之前,容器在创建HttpServletRequest和…

漏洞复现-浙大恩特客户资源管理系统CustomerAction.entphone;.js 接口任意文件上传漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

计网 - TCP重传策略大揭秘:确保数据可靠传输的秘诀

文章目录 Pre为什么需要设计重传机制四种常见的重传机制超时重传快速重传SACKD-SACK Pre 计网 - 传输层协议 TCP:TCP 为什么握手是 3 次、挥手是 4 次? 计网 - TCP三次握手原理全曝光:深度解析与实战演示 计网 - TCP四次挥手原理全曝光&am…