如何在鸿蒙开发板上输出Hello World

harmonyos 开发快速入门:鸿蒙开发板上输出 hello world!
本文的重点:
如何编写 hello world 程序
如何编译烧录 hello world 程序
如何调试 hello world 程序
步骤:
添加 hello world 源码文件
编写 hello world 业务代码
编写编译构建文件 build.gn
调试 hello world 程序
总结
步骤一:添加hello world源码文件
①新增 my_app 文件夹
在 ./applications/bearpi/bearpi-hm_nano/sample 路径下新建一个 my_app 目录,用于存放业务源码文件。
②新增 hello_world.c 文件
在 ./applications/bearpi/bearpi-hm_nano/sample/my_app 路径下新建一个 hello_world.c 文件,该文件为业务源码文件。
③新增 build.gn 文件
在 ./applications/bearpi/bearpi-hm_nano/sample/my_app 路径下新建一个 build.gn 文件,该文件为业务源码编译脚本。
步骤二:编写hello world业务代码
在 hello_world.c 中新建业务入口函数 helloworld,并实现业务逻辑。并在代码最下方,使用 harmonyos 启动恢复模块接口 app_feature_init() 启动业务。(app_feature_init 定义在 ohos_init.h 文件中)
添加 helloworld 代码:
#include #include ohos_init.hvoid hello_world(void){printf(hello world!);}app_feature_init(hello_world);     
步骤三:编写业务编译构建文件build.gn
    编写用于将业务构建成静态库的 build.gn 文件:
在 ./applications/bearpi/bearpi-hm/sample/my_app 下的 build.gn 文件中添加如下代码:
static_library(myapp) {sources = [hello_world.c]include_dirs = [//utils/native/lite/include]}  
static_library 中指定业务模块的编译结果,为静态库文件 libmyapp.a,开发者根据实际情况完成填写。
sources 中指定静态库 .a 所依赖的 .c 文件及其路径,若路径中包含//则表示绝对路径(此处为代码根路径),若不包含//则表示相对路径。
include_dirs 中指定 source 所需要依赖的 .h 文件路径。
步骤四:编写模块编译构建文件build.gn
编写模块 build.gn 文件,指定需参与构建的特性模块。
在 ./applications/bearpi/bearpi-hm/sample 下的 build.gn 文件中添加如下代码:
import(//build/lite/config/component/lite_component.gni)lite_component(app) {features = [my_app:myapp,]}my_app 是相对路径,指向:./applications/bearpi/bearpi-hm/sample/my_app/build.gnmyapp 是目标,指向:./applications/bearpi/bearpi-hm/sample/my_app/build.gn中的static_library(myapp)  
new task:输出 10 十次:hello harmony!
代码如下:
#include #include ohos_init.hvoid hello_world(void){printf(hello world!);}app_feature_init(hello_world);输出如下图:


LED状态指示电池充电器电路设计
什么是六自由度压电纳米定位台,它的作用是什么
航顺HK32AUTO39A,性价比之王,车身域和座舱域首选SoC
电源+3.3V有什么用?电源的3.3V输出的作用
Apple News+:拥抱300多个杂志的新闻平台
如何在鸿蒙开发板上输出Hello World
漫步者CES2020参展产品汇总 堪称一场听觉盛宴
iPhone8传闻大汇总,总有一种你想要的
105J是CBB电容吗?
爱芯元智上榜“中国AI芯片企业”先锋企业TOP 30
中兴与美国达成替代的和解协议(附:中兴非独立董事简历)
安捷伦是德科技E8364C网络分析仪
小米6明日发布:小米6性能对比华为mate10、三星note8,三款即将出售的手机哪家强?
最近发生的最新芯闻
快讯:小米回应雷军减持3亿股 中芯国际董事长周子学辞职
吉时利DMM7510高分辨率数字万用表的特点优势及应用分析
Arduino蓝牙手套第二部分—集成所有部件
红魔5G手机将在线上发布,标配LPDDR5内存
复位电路很简单,但却有很多门道
YOGO Robot推出智能配送站 机器人覆盖无人化配送流程