鸿蒙OpenHarmony【轻量系统 编译】 (基于Hi3861开发板)

编译

OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码]。

使用build.sh脚本编译源码

  1. 进入源码根目录,执行如下命令进行版本编译。

    cpp 复制代码
    ./build.sh --product-name name --ccache

    说明: _name_为产品名称,例如Hi3516DV300、rk3568等。

  2. 检查编译结果。编译完成后,log中显示如下:

    cpp 复制代码
    post_process
    =====build name successful.

    编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在out/{device_name}/packages/phone/images/ 目录下。

    说明: 其他模块化编译操作,可参见编译构建指南

想要详细了解OpenHarmony编译构建模块功能的开发者可参考编译构建指南

前提条件

  • 已正确[安装库和工具集]。
  • 已正确[安装编译工具]。
  • 已正确[安装Hi3861特有工具])。
  • "Hello World"程序已编写完成。
  • 可正常登录Ubuntu环境。

操作步骤

鸿蒙开发指导文档:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

在Ubuntu环境下进入源码根目录,执行如下命令进行编译:

  1. 设置编译路径。

    复制代码
    hb set
  2. 选择当前路径。

  3. 在hisilicon下选择wifiiot_hispark_pegasus并回车。

    说明:

    同样的开发板在适配不同的场景时,要采用的编译形态不同(即此处要选择的product不同),请参考[编译形态整体说明]。

编译形态整体说明

在编译过程中,需要根据实际需求选择不同的编译形态。单击下表中的链接可获取具体产品配置,从而了解其中差异。

表1 编译构建支持的产品列表

编译形态 开发板 主芯片 内核 系统类型
neptune100 neptune100 winnermicro liteos_m mini
rk3568 rk3568 rockchip linux standard
rk3568_mini_system rk3568 rockchip linux standard
bearpi_hm_micro bearpi_hm_micro stm32mp1xx liteos_a small
bearpi_hm_nano bearpi_hm_nano hi3861v100 liteos_m mini
wifiiot_hispark_pegasus hispark_pegasus hi3861v100 liteos_m mini
ipcamera_hispark_aries hispark_aries hi3518ev300 liteos_a small
ipcamera_hispark_taurus hispark_taurus hi3516dv300 liteos_a small
ipcamera_hispark_taurus_linux hispark_taurus hi3516dv300 linux small
hispark_taurus_standard hispark_taurus hi3516dv300 linux standard
watchos hispark_taurus hi3516dv300 linux standard
hispark_phoenix hispark_phoenix hi3751v350 linux standard
hispark_taurus_mini_system hispark_taurus hi3516dv300 liteos_a mini
hispark_pegasus_mini_system hispark_pegasus hi3861v100 liteos_m mini
gr5515_sk_iotlink_demo gr5515_sk gr551x liteos_m mini
gr5515_sk_xts_demo gr5515_sk gr551x liteos_m mini
wifi_demo dev_wifi_a asr582x liteos_m mini
xts_demo dev_wifi_a asr582x liteos_m mini
display_demo v200zr bes2600 liteos_m mini
xts_demo v200zr bes2600 liteos_m mini
iotlink_demo v200zr bes2600 liteos_m mini
mini_distributed_music_player v200zr bes2600 liteos_m mini
niobe407 niobe407 stm32f4xx liteos_m mini
qemu_mini_system_demo arm_mps2_an386 qemu liteos_m mini
qemu_csky_mini_system_demo SmartL_E802 qemu liteos_m mini
qemu_cm55_mini_system_demo arm_mps3_an547 qemu liteos_m mini
qemu_xtensa_mini_system_demo esp32 qemu liteos_m mini
qemu_riscv_mini_system_demo ricsv32_virt qemu liteos_m mini
qemu_ca7_mini_system_demo arm_virt qemu liteos_a small
qemu_small_system_demo arm_virt qemu liteos_a small
qemu_arm_linux_min qemu-arm-linux qemu linux standard
qemu_arm_linux_headless qemu-arm-linux qemu linux standard
iotlink_demo cst85_wblink chipsea liteos_m mini
dsoftbus_demo cst85_wblink chipsea liteos_m mini
xts_demo cst85_wblink chipsea liteos_m mini

图1 Hi3861编译设置图例

  1. 执行编译。

说明:

  • 单独编译一个部件(例如hello),可使用"hb build -T 目标名称"进行编译。
  • 增量编译整个产品,可使用"hb build"进行编译。
  • 完整编译整个产品,可使用"hb build -f"进行编译。

此处以完整编译整个产品为例进行说明。

cpp 复制代码
hb build -f
  1. 编译结束后,出现"build success"字样,则证明构建成功。

须知: 编译结果文件及编译日志获取路径:out/hispark_pegasus/wifiiot_hispark_pegasus。

鸿蒙Next核心技术分享

1、鸿蒙基础知识←《鸿蒙NEXT星河版开发学习文档》

2、鸿蒙ArkUI←《鸿蒙NEXT星河版开发学习文档》

3、鸿蒙进阶技术←《鸿蒙NEXT星河版开发学习文档》

4、鸿蒙就业高级技能←《鸿蒙NEXT星河版开发学习文档》

5、鸿蒙多媒体技术←《鸿蒙NEXT星河版开发学习文档》

6、鸿蒙南向驱动开发←《鸿蒙NEXT星河版开发学习文档》

7、鸿蒙南向内核设备开发←《鸿蒙NEXT星河版开发学习文档》

8、鸿蒙系统裁剪与移植←《鸿蒙NEXT星河版开发学习文档》

相关推荐
努力变厉害的小超超3 小时前
ArkTS中的组件基础、状态管理、样式处理、class语法以及界面渲染
笔记·鸿蒙
sanzk3 小时前
华为鸿蒙应用开发
华为·harmonyos
SoraLuna8 小时前
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
macos·ui·harmonyos
ClkLog-开源埋点用户分析9 小时前
ClkLog企业版(CDP)预售开启,更有鸿蒙SDK前来助力
华为·开源·开源软件·harmonyos
mg6689 小时前
鸿蒙系统的优势 开发 环境搭建 开发小示例
华为·harmonyos
lqj_本人9 小时前
鸿蒙next选择 Flutter 开发跨平台应用的原因
flutter·华为·harmonyos
lqj_本人9 小时前
使用 Flutter 绘制一个棋盘
harmonyos
lqj_本人12 小时前
Flutter&鸿蒙next 状态管理框架对比分析
flutter·华为·harmonyos
青瓷看世界14 小时前
华为HarmonyOS打造开放、合规的广告生态 - 插屏广告
华为·harmonyos·广告投放
青瓷看世界14 小时前
华为HarmonyOS借助AR引擎帮助应用实现虚拟与现实交互的能力2-管理AR会话
华为·ar·harmonyos·虚拟现实