![AIoT应用开发与实践](https://wfqqreader-1252317822.image.myqcloud.com/cover/247/51975247/b_51975247.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.1 LiteOS编译框架和开发工具
2.1.1 LiteOS编译框架
Huawei LiteOS使用Kconfig文件配置系统,基于GCC/Makefile实现组件化编译。无论是在Linux下使用make menuconfig命令配置系统,还是在Windows下使用Huawei LiteOS Studio进行图形化配置,Huawei LiteOS都会同时解析、展示根目录下的.config文件和tools/menuconfig/config.in文件(该文件包含各个模块的Kconfig文件),同时在开发板的include文件夹下生成menuconfig.h。config.in文件由Kconfig语言(一种菜单配置语言)编写而成。config.in文件决定了要展示的配置项,.config文件决定了各个配置项的默认值。
Huawei LiteOS通过在根目录下执行make命令完成自动化编译整个工程。对于根目录下的Makefile文件,其中包含config.mk,config.mk又包含los-config.mk,而los-config.mk则包含了各个模块的Makefile和.config文件,定义了对整个工程的编译链接规则。各个编译文件的内在关系如图2.1所示。
![](https://epubservercos.yuewen.com/235ADB/30715475603706806/epubprivate/OEBPS/Images/23_01.jpg?sign=1738847720-DklYDIy0G6WYOYOKZHYgR45nJXuqnxeE-0-b4ffcde650c6612f72a41ff45ba1b752)
图2.1 各个编译文件的内在关系