鸿蒙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星河版开发学习文档》

相关推荐
AORO_BEIDOU3 小时前
单北斗+鸿蒙系统+国产芯片,遨游防爆手机自主可控“三保险”
华为·智能手机·harmonyos
博览鸿蒙4 小时前
鸿蒙操作系统(HarmonyOS)的应用开发入门
华为·harmonyos
Damon小智11 小时前
HarmonyOS NEXT 技术实践-基于基础视觉服务的多目标识别
华为·harmonyos
袁震1 天前
Android-Glide缓存机制
android·缓存·移动开发·glide
爱笑的眼睛111 天前
uniapp 极速上手鸿蒙开发
华为·uni-app·harmonyos
K.P1 天前
鸿蒙元服务从0到上架【第三篇】(第二招有捷径)
华为·harmonyos·鸿蒙系统
K.P1 天前
鸿蒙元服务从0到上架【第二篇】
华为·harmonyos·鸿蒙系统
敲代码的小强1 天前
Flutter项目兼容鸿蒙Next系统
flutter·华为·harmonyos
程序猿会指北1 天前
纯血鸿蒙APP实战开发——Text实现部分文本高亮和超链接样式
移动开发·harmonyos·arkts·openharmony·arkui·组件化·鸿蒙开发
鸿蒙自习室2 天前
鸿蒙开发——关系型数据库的基本使用与跨设备同步
前端·数据库·华为·harmonyos·鸿蒙