概述
本文档以一个 “Hello World” 可执行程序为例,详细讲解如何在 OpenHarmony 标准系统(rk3568)上开发 Native C 应用。内容涵盖构建系统原理、GN 语法详解、bundle.json 字段说明、产品配置注册机制,以及完整的编译部署流程。
1. OpenHarmony 构建系统基础
1.1 构建框架概览
OpenHarmony 使用GN + Ninja构建框架,由hb或build.sh脚本编排:
开发者 │ ▼ build.sh / hb ─── 解析产品配置、组装参数 │ ▼ GN ─── 读取 BUILD.gn 文件,生成 build.ninja │ ▼ Ninja ─── 执行实际的编译、链接操作 │ ▼ 编译产物(ELF 可执行文件、.so 动态库、.hap 包等)- GN(Generate Ninja):元构建系统,语法类似精简版 Python,负责描述"要构建什么"
- Ninja:底层执行器,只关心"怎么构建",速度极快
- build.sh:入口脚本,封装产品选择、工具链下载、GN/Ninja 调用