新手别怕用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构第一次接触嵌入式Linux开发面对密密麻麻的SDK目录是不是感觉无从下手就像刚搬进新家面对一堆未拆封的纸箱完全不知道从哪开始整理。别担心今天我们就用BingPi-M2开发板作为新家把Tina Linux SDK的目录结构变成一张清晰的户型图。想象一下SDK就是你新家的装修工具箱每个文件夹都对应着装修过程中的特定功能区域。我们不需要一开始就掌握所有细节只要先搞清楚客厅放沙发、厨房放餐具这样的大框架后续开发就会事半功倍。下面我会用最生活化的类比带你快速建立整体认知。1. 先认识你的新家户型图打开Tina Linux SDK首先看到的是这些核心目录Tina-Linux/ ├── build ├── config ├── devices ├── lichee ├── package ├── prebuild ├── scripts ├── target └── toolchain这就像你家的户型图标注了客厅、卧室、厨房等功能区。让我们用装修房子的思维来理解build装修施工手册 - 告诉工人如何一步步完成装修config装修风格样板间 - 展示各种装修风格选项devices户型定制方案 - 根据你家实际尺寸做的专属设计package家具家电商城 - 所有可选的家居用品清单提示开发板型号不同就像户型大小不同BingPi-M2对应的就是T113-S3平台的配置方案2. 重点区域详解你家的功能间2.1 devices目录 - 你家的专属定制方案这个目录存放着针对BingPi-M2开发板的专属配置相当于你家的水电布线图sys_config.fex家具摆放设计图board.dts设备树文件房间功能划分表分区表配置具体到T113-S3平台关键文件在devices/config/chips/t113/就像装修时师傅会问主卧要装吊灯还是吸顶灯这里的配置文件决定了使用哪些硬件接口内存如何分配系统启动参数设置2.2 package目录 - 家电家具大卖场这里汇集了所有可安装的软件包就像家居商场的不同展区package/ ├── allwinner │ ├── eyesee-mpp - 监控摄像头套件 │ └── tina-player - 家庭影院系统 ├── libs │ ├── openssl - 安全门锁系统 │ └── zlib - 储物压缩袋 └── utils ├── busybox - 多功能瑞士军刀 └── wget - 快递收取工具不是所有软件都默认适配BingPi-M2就像不是所有家具都适合小户型。需要时可以通过make menuconfig来选择需要的家具系统会自动处理依赖关系。2.3 lichee目录 - 房屋主体结构这里存放着系统的承重墙和地基bootloader大门钥匙 - 负责最开始的系统引导linux内核房屋框架 - 决定系统的基本能力DSP代码智能家居中控 - 需要额外授权才能使用lichee/ ├── brandy-2.0 # bootloader └── linux-5.4 # 内核源码注意DSP相关代码需要向全志申请授权才能使用就像某些高端家电需要实名购买3. 装修工具间build和config目录3.1 build目录 - 装修施工指南这里定义了整个系统的构建规则就像装修公司的施工流程表.mk文件质量验收标准构建规则工种协作规范依赖关系主要文件结构build/ ├── autotools.mk # 自动工具规范 ├── cmake.mk # CMake项目规则 └── package.mk # 软件包通用模板3.2 config目录 - 装修风格样本这里保存着各种配置选项就像装修公司提供的地板样品内核配置油漆色卡系统特性选择灯具目录驱动选项关键路径config/ └── chips/ └── t113/ # T113-S3专属配置通过make menuconfig命令就像在装修设计软件中拖动滑块选择系统功能组件硬件驱动支持文件系统类型4. 实际装修过程编译与输出当你执行make命令时系统会根据devices/中的户型图准备材料按照build/的施工手册进行操作从package/挑选需要的家具最终在out/目录生成装修成果编译BingPi-M2镜像的典型流程source build/envsetup.sh # 准备装修环境 lunch bingpi_m2-t113 # 选择BingPi-M2户型 make # 开始装修编译完成后在out/目录会生成tina_bingpi-m2_uart0.img- 完整系统镜像boot.img- 启动引导部分rootfs.img- 文件系统部分就像装修完工后你会得到完整的智能家居系统系统镜像大门智能锁程序bootloader室内家电控制系统根文件系统5. 常见问题工具箱刚开始使用时常会遇到这些问题菜单配置保存无效确保在device/config/chips/t113/下正确选择了方案像选错户型图会导致装修风格不匹配软件包编译失败检查package/下该软件是否支持T113平台就像买的沙发尺寸不适合你家客厅镜像刷写后不启动确认sys_config.fex中的硬件配置正确相当于水电图纸错了会导致家电无法使用调试时可以关注这些日志文件out/logs/build.log- 完整的装修过程记录out/logs/compile.log- 家具组装细节out/logs/pack.log- 最终验收报告记住第一次接触嵌入式开发就像第一次装修房子遇到问题很正常。关键是要保持耐心先建立整体框架认知再逐步深入各个细节模块。BingPi-M2开发板配合Tina Linux SDK是个非常友好的入门组合多尝试几次menuconfig配置和编译流程很快你就能得心应手了。
新手别怕!用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构
新手别怕用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构第一次接触嵌入式Linux开发面对密密麻麻的SDK目录是不是感觉无从下手就像刚搬进新家面对一堆未拆封的纸箱完全不知道从哪开始整理。别担心今天我们就用BingPi-M2开发板作为新家把Tina Linux SDK的目录结构变成一张清晰的户型图。想象一下SDK就是你新家的装修工具箱每个文件夹都对应着装修过程中的特定功能区域。我们不需要一开始就掌握所有细节只要先搞清楚客厅放沙发、厨房放餐具这样的大框架后续开发就会事半功倍。下面我会用最生活化的类比带你快速建立整体认知。1. 先认识你的新家户型图打开Tina Linux SDK首先看到的是这些核心目录Tina-Linux/ ├── build ├── config ├── devices ├── lichee ├── package ├── prebuild ├── scripts ├── target └── toolchain这就像你家的户型图标注了客厅、卧室、厨房等功能区。让我们用装修房子的思维来理解build装修施工手册 - 告诉工人如何一步步完成装修config装修风格样板间 - 展示各种装修风格选项devices户型定制方案 - 根据你家实际尺寸做的专属设计package家具家电商城 - 所有可选的家居用品清单提示开发板型号不同就像户型大小不同BingPi-M2对应的就是T113-S3平台的配置方案2. 重点区域详解你家的功能间2.1 devices目录 - 你家的专属定制方案这个目录存放着针对BingPi-M2开发板的专属配置相当于你家的水电布线图sys_config.fex家具摆放设计图board.dts设备树文件房间功能划分表分区表配置具体到T113-S3平台关键文件在devices/config/chips/t113/就像装修时师傅会问主卧要装吊灯还是吸顶灯这里的配置文件决定了使用哪些硬件接口内存如何分配系统启动参数设置2.2 package目录 - 家电家具大卖场这里汇集了所有可安装的软件包就像家居商场的不同展区package/ ├── allwinner │ ├── eyesee-mpp - 监控摄像头套件 │ └── tina-player - 家庭影院系统 ├── libs │ ├── openssl - 安全门锁系统 │ └── zlib - 储物压缩袋 └── utils ├── busybox - 多功能瑞士军刀 └── wget - 快递收取工具不是所有软件都默认适配BingPi-M2就像不是所有家具都适合小户型。需要时可以通过make menuconfig来选择需要的家具系统会自动处理依赖关系。2.3 lichee目录 - 房屋主体结构这里存放着系统的承重墙和地基bootloader大门钥匙 - 负责最开始的系统引导linux内核房屋框架 - 决定系统的基本能力DSP代码智能家居中控 - 需要额外授权才能使用lichee/ ├── brandy-2.0 # bootloader └── linux-5.4 # 内核源码注意DSP相关代码需要向全志申请授权才能使用就像某些高端家电需要实名购买3. 装修工具间build和config目录3.1 build目录 - 装修施工指南这里定义了整个系统的构建规则就像装修公司的施工流程表.mk文件质量验收标准构建规则工种协作规范依赖关系主要文件结构build/ ├── autotools.mk # 自动工具规范 ├── cmake.mk # CMake项目规则 └── package.mk # 软件包通用模板3.2 config目录 - 装修风格样本这里保存着各种配置选项就像装修公司提供的地板样品内核配置油漆色卡系统特性选择灯具目录驱动选项关键路径config/ └── chips/ └── t113/ # T113-S3专属配置通过make menuconfig命令就像在装修设计软件中拖动滑块选择系统功能组件硬件驱动支持文件系统类型4. 实际装修过程编译与输出当你执行make命令时系统会根据devices/中的户型图准备材料按照build/的施工手册进行操作从package/挑选需要的家具最终在out/目录生成装修成果编译BingPi-M2镜像的典型流程source build/envsetup.sh # 准备装修环境 lunch bingpi_m2-t113 # 选择BingPi-M2户型 make # 开始装修编译完成后在out/目录会生成tina_bingpi-m2_uart0.img- 完整系统镜像boot.img- 启动引导部分rootfs.img- 文件系统部分就像装修完工后你会得到完整的智能家居系统系统镜像大门智能锁程序bootloader室内家电控制系统根文件系统5. 常见问题工具箱刚开始使用时常会遇到这些问题菜单配置保存无效确保在device/config/chips/t113/下正确选择了方案像选错户型图会导致装修风格不匹配软件包编译失败检查package/下该软件是否支持T113平台就像买的沙发尺寸不适合你家客厅镜像刷写后不启动确认sys_config.fex中的硬件配置正确相当于水电图纸错了会导致家电无法使用调试时可以关注这些日志文件out/logs/build.log- 完整的装修过程记录out/logs/compile.log- 家具组装细节out/logs/pack.log- 最终验收报告记住第一次接触嵌入式开发就像第一次装修房子遇到问题很正常。关键是要保持耐心先建立整体框架认知再逐步深入各个细节模块。BingPi-M2开发板配合Tina Linux SDK是个非常友好的入门组合多尝试几次menuconfig配置和编译流程很快你就能得心应手了。