头图

编译

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

使用build.sh脚本编译源码

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

    ./build.sh --product-name name --ccache

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

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

    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 编译构建支持的产品列表

编译形态开发板主芯片内核系统类型
neptune100neptune100winnermicroliteos_mmini
rk3568rk3568rockchiplinuxstandard
rk3568_mini_systemrk3568rockchiplinuxstandard
bearpi_hm_microbearpi_hm_microstm32mp1xxliteos_asmall
bearpi_hm_nanobearpi_hm_nanohi3861v100liteos_mmini
wifiiot_hispark_pegasushispark_pegasushi3861v100liteos_mmini
ipcamera_hispark_arieshispark_arieshi3518ev300liteos_asmall
ipcamera_hispark_taurushispark_taurushi3516dv300liteos_asmall
ipcamera_hispark_taurus_linuxhispark_taurushi3516dv300linuxsmall
hispark_taurus_standardhispark_taurushi3516dv300linuxstandard
watchoshispark_taurushi3516dv300linuxstandard
hispark_phoenixhispark_phoenixhi3751v350linuxstandard
hispark_taurus_mini_systemhispark_taurushi3516dv300liteos_amini
hispark_pegasus_mini_systemhispark_pegasushi3861v100liteos_mmini
gr5515_sk_iotlink_demogr5515_skgr551xliteos_mmini
gr5515_sk_xts_demogr5515_skgr551xliteos_mmini
wifi_demodev_wifi_aasr582xliteos_mmini
xts_demodev_wifi_aasr582xliteos_mmini
display_demov200zrbes2600liteos_mmini
xts_demov200zrbes2600liteos_mmini
iotlink_demov200zrbes2600liteos_mmini
mini_distributed_music_playerv200zrbes2600liteos_mmini
niobe407niobe407stm32f4xxliteos_mmini
qemu_mini_system_demoarm_mps2_an386qemuliteos_mmini
qemu_csky_mini_system_demoSmartL_E802qemuliteos_mmini
qemu_cm55_mini_system_demoarm_mps3_an547qemuliteos_mmini
qemu_xtensa_mini_system_demoesp32qemuliteos_mmini
qemu_riscv_mini_system_demoricsv32_virtqemuliteos_mmini
qemu_ca7_mini_system_demoarm_virtqemuliteos_asmall
qemu_small_system_demoarm_virtqemuliteos_asmall
qemu_arm_linux_minqemu-arm-linuxqemulinuxstandard
qemu_arm_linux_headlessqemu-arm-linuxqemulinuxstandard
iotlink_democst85_wblinkchipsealiteos_mmini
dsoftbus_democst85_wblinkchipsealiteos_mmini
xts_democst85_wblinkchipsealiteos_mmini

图1 Hi3861编译设置图例  

quickstart-lite-3861-build

HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿

搜狗高速浏览器截图20240326151450.png

  1. 执行编译。

说明:

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

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

hb build -f
  1. 编译结束后,出现“build success”字样,则证明构建成功。

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


烧脑猴
21 声望19 粉丝

5年JAVA,3年Android。现转入鸿蒙开发行业,每日分享一些鸿蒙技术!