• Home
  • Annotate
  • current directory
Name Date Size #Lines LOC

..21-Aug-2025-

src/21-Aug-2025-

README.md A D21-Aug-20251.3 KiB4938

SConscript A D21-Aug-202564 53

hello.c A D21-Aug-2025453 236

hello.h A D21-Aug-2025485 3010

package.json A D21-Aug-2025509 3131

README.md

1# Hello Component
2
3这是一个使用package.json配置的RT-Thread组件示例,展示了如何使用package.json来替代传统的SConscript中DefineGroup的方式。
4
5## 文件结构
6
7```
8hello/
9├── hello.h          # 头文件
10├── hello.c          # 源文件
11├── package.json     # 组件配置文件
12├── SConscript       # 构建脚本
13└── README.md        # 说明文档
14```
15
16## package.json配置说明
17
18package.json文件包含了组件的所有构建信息:
19
20- `name`: 组件名称
21- `version`: 版本号
22- `description`: 组件描述
23- `author`: 作者信息
24- `license`: 许可证
25- `source_files`: 源文件列表
26- `CPPPATH`: 头文件搜索路径
27- `CPPDEFINES`: 预定义宏
28- `depends`: 依赖的组件
29
30## 使用方法
31
321. 将hello文件夹复制到你的RT-Thread项目的components目录下
332. 在应用代码中包含头文件:
34   ```c
35   #include "hello.h"
36   ```
373. 调用hello_world函数:
38   ```c
39   hello_world();  // 输出: Hello World!
40   ```
41
42## 构建过程
43
44SConscript文件会:
451. 导入package.py模块
462. 调用BuildPackage函数处理package.json
473. 自动创建DefineGroup并返回构建对象
48
49这种方式比传统的SConscript更加简洁和易于维护。