他的回复:
2.3 OpenHarmony编译构建介绍 # 一、总结: ninja 对标 makefile ,但在大型项目中编译速度更快。它是由 json,gn构成的编译环境。 在 build\lite\product\BearPi-HM_Nano.json 文件中,已经有了编译框架,然后 : 前的是目标路径,后面的是目标名。 * 模块编译成 静态链接库文件,最后 链接起来,生成一个 bin。 * 代码是如何运行起来的? * 这个 harmonyOS 是没有 main.c 的。它是从 vendor\hisi\hi3861\hi3861\app\wifiiot_app\src\app_main.c 开始运行的。入口函数 app_main。 * app_main 会打印出 sdk 的版本。 # 二、实战笔记: ## 新建模块步骤 * 1.在 sample 中创建新的文件夹,用于存放新模块的 BUILD.gn (此文件名一定要大写,否则编译会找不到文件) 和 源文件。 * 2.在新模块的 BUILD.gn 中,参照 sample 下的其他模块的BUILD.gn,修改合适的目标名,及相关的头文件路径。 * 3.修改 sample 目录下的 BUILD.gn ,注释其余的模块,追加新模块的编译目标,格式:"sample下的文件夹名:新模块的 BUILD.gn 里的目标名"。 ## 编译 在 MobaXterm 下登录Linux,进到工程的根目录,运行 hpm dist。打印 BUILD SUCCESS 即成功。 ## 烧录 打开 Hiburn ,刷新COM,选择对应COM。select file 指定 工程中的out/BearPi-HM_Nano/Hi3861_wifiiot_app_allinone.bin # 三、感想 视频属于简单易上手的实践干货,如果能够提供一些整理好的理论资料就更好了,比如工程中的各个分模块在文件目录中的分布,用类似doxygen或markdown的方式记录函数API在哪里定义,类型是怎样的,能让用户快速找到想要的API。