LiteOS增加执行自定义源码

开发过程注意事项:

  1. 源码工程路径不能太长
  2. 源码工程路径不能有中文
  3. 一定要关闭360等杀毒软件,否则编译的打包阶段会出错

增加自定义源码的步骤:

1.创建源码目录

2. 创建源文件

新建myhello目录后,再此目录下再新建源文件myhello_demo.c

3. 编写自定义代码

在myhello_demo.c中增加代码如下:

cpp 复制代码
#include <stdio.h>

#include <ohos_init.h> //必须包含此头文件,否则无法调试输出



void myhello_init() //自定义一个入口函数

{

    printf("myhello init\n");

}



//声明myhello_init为入口函数

SYS_RUN(myhello_init); //在鸿蒙系统层自动执行入口函数

// APP_FEATURE_INIT(myhello_init); //在鸿蒙系统的应用层自动执行入口函数

4. 配置自定义源码的编译

鸿蒙系统源码是通过目录下的BUILD.gn描述当前源码如何编译,则有哪些源文件,及使用的头文件路径。复制iothardware目录下的BUILD.gn到myhello目录下。

修改myhello目录下的BUILD.gn文件内容为:

cpp 复制代码
static_library("myhello_demo") {

    sources = [

        "myhello_demo.c"

    ]



    include_dirs = [

        "//utils/native/lite/include",

        "//kernel/liteos_m/kal/cmsis",

        "//base/iot_hardware/peripheral/interfaces/kits",

    ]

}

其中:myhello_demo为编译的目标名, sources指定当前目标由哪些源文件组成, include_dirs指定源码中使用的头文件所在路径。

修改myhello上级App目录下的BUILD.gn, 修改内容为:

bash 复制代码
import("//build/lite/config/component/lite_component.gni")



lite_component("app") {

    features = [

#备注 "源码目录名:源码目录BUILD.gn的目标名"

        "myhello:myhello_demo",

    ]

}

5. 执行程序

重新ReBuild工程后,upload烧录并打开monitor后即可接收开发板里输出的信息。

相关推荐
小冷爱学习!8 小时前
华为动态路由-OSPF-完全末梢区域
服务器·网络·华为
2501_904447748 小时前
华为发力中端,上半年nova14下半年nova15,大力普及原生鸿蒙
华为·智能手机·django·scikit-learn·pygame
MarkHD9 小时前
第十八天 WebView深度优化指南
华为·harmonyos
塞尔维亚大汉10 小时前
OpenHarmony(鸿蒙南向)——平台驱动开发【MIPI CSI】
harmonyos·领域驱动设计
别说我什么都不会10 小时前
鸿蒙轻内核M核源码分析系列十五 CPU使用率CPUP
操作系统·harmonyos
feiniao865111 小时前
2025年华为手机解锁BL的方法
华为·智能手机
塞尔维亚大汉12 小时前
OpenHarmony(鸿蒙南向)——平台驱动开发【I3C】
harmonyos·领域驱动设计
VVVVWeiYee12 小时前
BGP配置华为——路径优选验证
运维·网络·华为·信息与通信
今阳13 小时前
鸿蒙开发笔记-6-装饰器之@Require装饰器,@Reusable装饰器
android·app·harmonyos
余多多_zZ14 小时前
鸿蒙初学者学习手册(HarmonyOSNext_API14)_组件截图(@ohos.arkui.componentSnapshot (组件截图) )
学习·华为·harmonyos·鸿蒙·鸿蒙系统