一、openwrt结构分析

openwrt 系统宏观结构

openwrt目录结构

1. config 存着系统的配置文件

.in —> .config---->编译脚本解析
CONFIG_HAVE_DOT_CONFIG = y 等等
作用:控制整个编译过程,是整个系统的配置文件,如果需要增加新的编译选
项,需要按照config.in文件格式进行设计


Config-build.in  		 //单纯去编译的最基本的配置文件
config-devel.in			//用于开发的配置文件,基于源码开发
config-images.in		//基于生成某种镜像
config-kernel.in		//内核包括文件系统
所有的 .in文件会生成 .config 文件
  • config-images.in
    在这里插入图片描述
/* 	镜像不等于编译,bulid后生成的 elf文件	*/
*镜像与编译的区别*
elf	-->	image

对elf文件进行压缩放进镜像体里,把压缩算法的实现放在
镜像头里,运行时,先用自定义格式的内容的镜像头来解
压缩 镜像体,解压后释放进内存里运行
  • config-bulid.in
    用于管理各种文件,在以后安装模块时用
```bash
menu "Global build settings"

	config ALL_NONSHARED
		bool "Select all target specific packages by default"
		default ALL || BUILDBOT

	config ALL_KMODS
		bool "Select all kernel module packages by default"
		default ALL

	config ALL
		bool "Select all userspace packages by default"
		default n

	config BUILDBOT
		bool "Set build defaults for automatic builds (e.g. via buildbot)"
		default n
		help
		  This option changes several defaults to be more suitable for
		  automatic builds. This includes the following changes:
		  - Deleting build directories after compiling (to save space)
		  - Enabling per-device rootfs support
  • 在 .config文件中最关键的是 y 和 n 和其他关键字选项
  • 脚本会使用它,#代表注释
# CONFIG_TARGET_ar7 is not set
OpenWrt是一个开源的嵌入式操作系统,主要用于路由器和其他网络设备。通过分析OpenWrt的源码,我们可以了解其编译过程和目录结构OpenWrt的源码包括多个子目录,其中最重要的是根目录下的Makefile文件。这个Makefile文件是执行make命令时的入口。在Makefile中,可以定义编译选项、目标和依赖关系。 在Makefile中,有一个名为"world"的目标,它是整个编译过程的入口。在这个目标中,根据是否定义了"OPENWRT_BUILD"变量,会执行不同的逻辑。如果"OPENWRT_BUILD"变量未定义,会执行第一个逻辑;如果定义了,会执行第二个逻辑。 整个编译过程涉及到多个子目录的目标生成。每个子目录都有自己的Makefile文件,用于定义该子目录下的编译选项、目标和依赖关系。通过递归调用子目录的Makefile,可以完成整个OpenWrt的编译过程。 在编译过程中,还包括了内核的编译过程、固件的生成过程和软件包的编译过程。这些过程都在相应的子目录中完成。 总结来说,通过分析OpenWrt的源码,我们可以了解其编译过程和目录结构。Makefile文件是整个编译过程的入口,通过递归调用子目录的Makefile,完成各个子目录的目标生成。同时,还包括了内核的编译过程、固件的生成过程和软件包的编译过程。 #### 引用[.reference_title] - *1* *2* *3* [openwrt源码框架解析](https://blog.csdn.net/daidi1989/article/details/53336845)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>