1. 什么是armbian
Armbian是一个基于Debian或Ubuntu的开源操作系统,专门针对嵌入式ARM平台进行优化和定制。Armbian可以运行在多种不同的嵌入式设备上,例如树莓派、ArmSoM、香蕉派等等。Armbian针对不同的嵌入式平台,提供了相应的硬件支持,可以让用户轻松地在这些平台上搭建自己的嵌入式系统。armbian立项于2014年底,于2016年开始进入频繁更新,每年千万行代码的爆发式成长,截止目前为止,官网已经支持185个不同的硬件设备的适配。
2. 为什么要使用armbian
Armbian提供了丰富的软件库和组件,包括Linux内核、文件系统、应用程序等,用户可以根据自己的需要进行选择和安装。Armbian还提供了一套完整的开发工具链,方便用户进行开发和调试工作。总的来说,Armbian是一款功能强大、灵活性高、易于定制的嵌入式操作系统,适用于各种不同的嵌入式设备和应用场景。
3. 如何使用armbian
3.1 基本要求
x86_64 或 aarch64 计算机,至少具有 2GB 内存和 ~35GB 磁盘空间,用于虚拟机、WSL2、容器或裸机安装
Ubuntu Jammy 22.04.x amd64 或 aarch64 用于本机构建或任何支持 Docker 的 amd64 / aarch64 Linux 用于容器化。官方支持的编译环境仅限 Ubuntu Jammy 22.04.x amd64 !
超级用户权限(配置的 sudo 或 root 访问权限)。
确保您的所有系统组件都是最新的。例如,过时的 Docker 二进制文件可能会导致问题。
很多资源包下载都需要外网,中国的用户需要一个翻墙工具
3.2 开始构建$ apt-get -y install git
$ git clone --depth=1 --branch=main https://github.com/armbian/build
$ cd build
$ ./compile.sh命令执行后会进行以下三个操作,具体的操作解释,后续我会写文章详细解释
交互式图形界面。
通过安装必要的依赖项和源来准备工作区。
它指导整个过程并创建内核包或即用型 SD 卡映像。
4. 项目结构├── cache Work / cache directory
│ ├── aptcache Packages
│ ├── ccache C/C++ compiler
│ ├── docker Docker last pull
│ ├── git-bare Minimal Git
│ ├── git-bundles Full Git
│ ├── initrd Ram disk
│ ├── memoize Git status
│ ├── patch Kernel drivers patch
│ ├── pip Python
│ ├── rootfs Compressed userspaces
│ ├── sources Kernel, u-boot and other sources
│ ├── tools Additional tools like ORAS
│ └── utility
├── config Packages repository configurations
│ ├── targets.conf Board build target configuration
│ ├── boards Board configurations
│ ├── bootenv Initial boot loaders environments per family
│ ├── bootscripts Initial Boot loaders scripts per family
│ ├── cli CLI packages configurations per distribution
│ ├── desktop Desktop packages configurations per distribution
│ ├── distributions Distributions settings
│ ├── kernel Kernel build configurations per family
│ ├── sources Kernel and u-boot sources locations and scripts
│ ├── templates User configuration templates which populate userpatches
│ └── torrents External compiler and rootfs cache torrents
├── extensions Extend build system with specific functionality
├── lib Main build framework libraries
│ ├── functions
│ │ ├── artifacts
│ │ ├── bsp
│ │ ├── cli
│ │ ├── compilation
│ │ ├── configuration
│ │ ├── general
│ │ ├── host
│ │ ├── image
│ │ ├── logging
│ │ ├── main
│ │ └── rootfs
│ └── tools
├── output Build artifact
│ └── deb Deb packages
│ └── images Bootable images - RAW or compressed
│ └── debug Patch and build logs
│ └── config Kernel configuration export location
│ └── patch Created patches location
├── packages Support scripts, binary blobs, packages
│ ├── blobs Wallpapers, various configs, closed source bootloaders
│ ├── bsp-cli Automatically added to armbian-bsp-cli package
│ ├── bsp-desktop Automatically added to armbian-bsp-desktopo package
│ ├── bsp Scripts and configs overlay for rootfs
│ └── extras-buildpkgs Optional compilation and packaging engine
├── patch Collection of patches
│ ├── atf ARM trusted firmware
│ ├── kernel Linux kernel patches
| | └── family-branch Per kernel family and branch
│ ├── misc Linux kernel packaging patches
│ └── u-boot Universal boot loader patches
| ├── u-boot-board For specific board
| └── u-boot-family For entire kernel family
├── tools Tools for dealing with kernel patches and configs
└── userpatches User: configuration patching area
├── lib.config User: framework common config/override file
├── config-default.conf User: default user config file
├── customize-image.sh User: script will execute just before closing the image
├── atf User: ARM trusted firmware
├── kernel User: Linux kernel per kernel family
├── misc User: various
└── u-boot User: universal boot loader patches
CONTRIBUTING.md // We would love to have you join the Armbian 4.
感谢此系列特别感谢 armsom团队 和 armbian中国开发者 amazingfate
共6条
1/1 1 跳转至页
armbian开发攻略

关键词: armbian kernel


6楼
现实中接触的都是windows下的编程,哪怕是能跨越平台的编程,也都是在windows下做开发。单片机开发中,可用的系统,如RTOS、RTT等,不知道能不能算真正意义上操作系统。Armbian显然是更像操作系统个。
谢谢楼主分享!
共6条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
VOFA+波形显示+JYD-31蓝牙发送和解析不定长数据被打赏10分 | |
宏定义和const关键字定义被打赏5分 | |
换取逻辑分析仪】STM32G4从入门到大师之五:ADC中断方式单路采集电压被打赏16分 | |
【换取逻辑分析仪】STM32G4从入门到大师之四:ADC查询方式单路采集电压被打赏14分 | |
【分享开发笔记,赚取电动螺丝刀】几个单片机I2S外设的BLCK时钟对比被打赏20分 | |
【功率监测与控制系统DIY活动成果贴】DIY功率计与LabVIEW数据采集被打赏100分 | |
【分享开发笔记,赚取电动螺丝刀】使用ESP32S3调试I2S音频模块MAX98357被打赏22分 | |
【Freertos】任务管理被打赏10分 | |
分享博世的两种不同的喷射系统模式被打赏5分 | |
汽车+开路实验与短路实验被打赏10分 |