当前位置: 首页 > news >正文

Qt Creator 配置 Android 编译环境

Qt Creator 配置 Android 编译环境

  • 环境
  • 配置流程
    • 下载JDK
    • 修改Qt Creator默认android配置文件
      • 修改sdk_definitions.json配置
        • 修改的内容
      • Qt Creator配置
      • 异常处理
        • 删除提示占用
        • 编译报错

环境

  • Qt Creator 版本 qtcreator-16.0.1
  • Win10
    嗯, Qt这个开发环境有点难折腾,搞了我三天…

配置流程

下载JDK

5.15.2 需要下载的jdk为JDK11

修改Qt Creator默认android配置文件

这里为什么要修改,是因为每个版本的Qt Creator中的sdk_definitions.json配置都不一致,但是我们Qt版本为5.15.2,且Qt Android 编译环境要求一致性比较高.

修改sdk_definitions.json配置

路径

C:\Qt\qtcreator-16.0.1\share\qtcreator\android

原始内容

{"common": {"sdk_tools_url": {"linux": "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip","linux_sha256": "2d2d50857e4eb553af5a6dc3ad507a17adf43d115264b1afc116f95c92e5e258","windows": "https://dl.google.com/android/repository/commandlinetools-win-11076708_latest.zip","windows_sha256": "4d6931209eebb1bfb7c7e8b240a6a3cb3ab24479ea294f3539429574b1eec862","mac": "https://dl.google.com/android/repository/commandlinetools-mac-11076708_latest.zip","mac_sha256": "7bc5c72ba0275c80a8f19684fb92793b83a6b5c94d4d179fc5988930282d7e64"},"sdk_essential_packages": {"default": ["platform-tools", "cmdline-tools;latest", "emulator"],"linux": [],"mac": [],"windows": ["extras;google;usb_driver"]}},"specific_qt_versions": [{"versions": ["6.4"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;23.1.7779620", "platforms;android-31"]},{"versions": ["6.3", "6.2", "5.15.[9-20]"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;22.1.7171670", "platforms;android-31"]},{"versions": ["5.15.[0-8]", "5.14.[0-2]", "5.13.2", "6.0", "6.1"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;21.3.6528147", "platforms;android-31"]},{"versions": ["5.12.[0-5]", "5.13.[0-1]"],"sdk_essential_packages": ["build-tools;28.0.2", "ndk;19.2.5345600", "platforms;android-28"]}]
}

修改后的内容

{"common": {"sdk_tools_url": {"linux": "https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip","linux_sha256": "2d2d50857e4eb553af5a6dc3ad507a17adf43d115264b1afc116f95c92e5e258","windows": "https://dl.google.com/android/repository/commandlinetools-win-9123335_latest.zip","windows_sha256": "8a90e6a3deb2fa13229b2e335efd07687dcc8a55a3c544da9f40b41404993e7d","mac": "https://dl.google.com/android/repository/commandlinetools-mac-11076708_latest.zip","mac_sha256": "7bc5c72ba0275c80a8f19684fb92793b83a6b5c94d4d179fc5988930282d7e64"},"sdk_essential_packages": {"default": ["platform-tools", "cmdline-tools;8.0", "emulator"],"linux": [],"mac": [],"windows": ["extras;google;usb_driver"]}},"specific_qt_versions": [{"versions": ["6.4"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;23.1.7779620", "platforms;android-31"]},{"versions": ["6.3", "6.2", "5.15.[9-20]"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;22.1.7171670", "platforms;android-31"]},{"versions": ["5.15.[0-8]", "5.14.[0-2]", "5.13.2", "6.0", "6.1"],"sdk_essential_packages": ["build-tools;31.0.0", "ndk;21.3.6528147", "platforms;android-31"]},{"versions": ["5.12.[0-5]", "5.13.[0-1]"],"sdk_essential_packages": ["build-tools;28.0.2", "ndk;19.2.5345600", "platforms;android-28"]}]
}
修改的内容
"windows": "https://dl.google.com/android/repository/commandlinetools-win-9123335_latest.zip",
"windows_sha256": "8a90e6a3deb2fa13229b2e335efd07687dcc8a55a3c544da9f40b41404993e7d",
"default": ["platform-tools", "cmdline-tools;8.0", "emulator"]

以上修改是修改cmdline-tools版本,5.15.2需要配合8.0版本

Qt Creator配置

设置好jdk路径和SDK路径,注意SDK需要的是空文件夹,纯英文原始状态
点击设置SDK
在这里插入图片描述
在这里插入图片描述
然后全部点击,理论上讲就会自动下载对应的依赖.但是…
在这里插入图片描述
遇到上图所示,代表下载错误(此处我是搭梯子也好,还是重试也好,能成功完成下载的,都是纯属运气)
多试几次吧…,因为下载的依赖中都有个package.xml,我也不知道这个东西在哪里下载,或者配置.
在这里插入图片描述
这里检查下cmdline-tools版本 8.0
在这里插入图片描述

package.xml,这个文件必须存在且路径需要是:cmdline-tools\latest,否则即使下载成功,也会报错
在这里插入图片描述
成功以后是这样的
在这里插入图片描述
在这里插入图片描述

异常处理

删除提示占用

如果删除失败提示占用结束这个进程即可
在这里插入图片描述

编译报错

如果编译报错请检查一下参数,并改为图示版本
在这里插入图片描述
将gradle版本改为3.5.1
在这里插入图片描述

将build-tools版本改为31.0.0
在这里插入图片描述
这两个参数过高会导致编译报错

相关文章:

  • 火山RTC 6 自定义视频
  • 深入解析MySQL联合查询(UNION):案例与实战技巧
  • 区块链技术构建电子发票平台“税链”
  • JVM之垃圾回收器
  • 开源 RPA 工具深度解析与官网指引
  • 【Git】GitHub上传图片遇到的问题
  • Spark,序列化反序列化
  • C# 基础 try-catch代码块
  • 「华为」人形机器人赛道投资首秀!
  • 单片机学习Day08--相邻流水灯
  • 【落羽的落羽 C++】stack和queue、deque、priority_queue、仿函数
  • MySQL 8.0安装(压缩包方式)
  • 热部署与双亲委派
  • Oracle数据库局部性HANG处理过程
  • Adobe Acrobat pro在一份PDF中插入空白页
  • 【前端】骨架屏
  • 如何判断IP是否被平台标记
  • JVM类加载
  • USB传输模式
  • 深入理解 iOS 开发中的 `use_frameworks!`
  • 支持企业增强战略敏捷更好发展,上海市领导密集走访外贸外资企业
  • 印称印巴军事行动总指挥同意将局势降级
  • 扶桑谈|从石破茂“越菲行”看日本周边外交布局战略新动向
  • 农行深圳市分行原副行长王国彪涉嫌严重违纪违法被查
  • 体坛联播|巴萨4比3打服皇马,利物浦2比2战平阿森纳
  • 江西省司法厅厅长张强已任江西省委政法委分管日常工作副书记