K1 OH5.0 三方包移植说明
修订记录
| 修订版本 | 修订日期 | 修订说明 |
| 001 | 2025-04-01 | 初始版本 |
| 002 | 2025-06-06 | 添加libaio,fio移植方法 |
| 003 | 2025-07-24 | 添加bash移植方法 |
| 004 | 2025-07-25 | 添加iperf3移植方法 |
在 K1 OH5.0 系统中,第三方软件包的编译支持两种集成方式:
- 源码集成编译(推荐用于结构简单的包)
- 使用 NDK 编译(推荐用于依赖复杂的包)
以下章节将对这两种方式分别进行详细说明和示例演示。
1. 源码中集成并编译三方包
该方式是将第三方包的源代码集成至 OpenHarmony 源码树中进行统一编译。
主要工作内容包括:依据 OpenHarmony 的构建规范,为该第三方包编写对应的 BUILD.gn 构建脚本。
1.1. BUILG.gn 扫盲
OpenHarmony 使用 GN 构建系统,BUILD.gn 是其核心配置文件,用于定义编译目标及构建规则。其功能与传统的 Makefile 类似。
1.1.1. 简单示例:可执行程序
将 hello_world.c 编译为可执行程序,该程序依赖静态库 lib_utils。lib_utils 静态库由 utils.c 源文件编译生成,并通过 utils.h 提供相关函数接口。
config("default_flags") {
cflags = ["-Wall", "-O2"] # 编译器参数
}
ohos_executable("hello_world") {
sources = ["hello_world.c"] # 指定源文件
deps = [":lib_utils"] # 声明依赖项
configs = [":default_flags"] # 应用编译配置
}
ohos_shared_library("lib_utils") {
sources = ["utils.c"] # 指定源文件
include_dirs = [ # 指定头文件
"include"
]
public_configs = [":default_flags"]
}
目标类型:
executable():生成可执行文件static_library():构建静态库shared_library():构建动态库
关键参数:
sources:必需项,指定源文件列表deps:非必需项,声明依赖的其他目标configs:非必需项,应用编译配置项
1.2. 前置准备
参考编译文档完成系统编译、烧录:K1 OH5.0 下载编译烧录说明

