buildroot配置项介绍

前言

buildroot是一个构建文件系统的工具,虽然不如构建发行版的工具强大、完整,但总比手搓rootfs强

下载地址
https://buildroot.org/download.html

make menuconfig

make defconfig

在configs目录里有很多配置项,已经适配了很多板卡了,这里我们采用qemu的virt板

make qemu_aarch64_virt_defconfig

Target options

这个defconfig已经配好了,不用改

Toolchain

这里我用的自己的工具链,如果用默认的,就不需要修改

# 工具链类型: 用buildroot构建 or External
Toolchain type (External toolchain)
# 工具链: 用某些个官方的还是自定义的
Toolchain (Custom toolchain)
# 工具链起源: 下载 or path
Toolchain origin (Pre-installed toolchain)
# 工具链路径
(/home/arco/x-tools/aarch64-arco-linux-gnu/) Toolchain path
# 工具链前缀
($(ARCH)-arco-linux-gnu) Toolchain prefix
# 外部工具链的gcc版本、内核头文件版本、c库版本(不用担心,选错的话,编译的时候应该会提醒你)
External toolchain gcc version (11.x)
External toolchain kernel headers series (6.4.x)
External toolchain C library (glibc)
# 几个工具链是否支持的选项(仅使用外部工具链需要选),选错的话构建时会提醒
Toolchain has RPC support?
# 是否构建在宿主机上用来调试目标架构的gdb(不是在目标机上运行的)
Build cross gdb for the host
    TUI support

这里我用的自己的工具链,所以需要修改
Custom kernel headers series 和 GCC compiler Version

Build options

# 下载包的站点,也可以自己配
Mirrors and Download locations
# 执行构建的任务数,根据自己的cpu配吧
Number of jobs to run simultaneously
# hash校验 (如果报错可能得关
Advanced  --->
    Force all downloads to have a valid hash

System configuration

# hostname ...就那个
(arco-host) System hostname
# 进系统前会打印的东西
(---ARCO WELCOMES YOU---) System banner
# init进程,可以选systemV、systemd
Init system (BusyBox)
# 允许root密码登录、配置root密码
Enable root login with password
    () Root password
# 保留的语言配置文件,这里留个英文的
(C en_US) Locales to keep

Kernel

这里kernel也是我自定义的,如果直接用默认的 可以不配

# 内核版本,可以选 最新版/自定义版本/自定义的tarball/自定义Git仓
Kernel version (Custom tarball)
# 内核文件的url (本地的话就用file://)
(file:///home/kirin7/kernel/linux-6.6.57.tar.xz) URL of custom kernel tarball
# config文件路径
(board/qemu/aarch64-virt/linux.config) Configuration file path
# Image文件形式
Kernel binary format (Image)
# 构建设备树, 展开之后自己看吧
Build a Device Tree Blob (DTB)

Target packages

# 常见工具,比如binutils make flex git tree...
Development tools --->
# 太多了自己看吧

Filesystem images

# 文件系统格式
ext2/3/4 root filesystem
# 控制文件系统固定尺寸的,给出一个固定值,没达到就填0
(100M) exact size
# 其他没啥好看的

Bootloaders

# EDK2、grub2、uboot这几个比较常见,其他不认识

Host utilities Legacy config options

这俩感觉没啥好配的

报错处理

内置wget指令报错: --no-check-certificate
解决:
在/etc/wgetrc或~/.wgetrc添加
check_certificate = off


内核包报错缺少哈希:ERROR: No hash found for linux-6.6.57.tar.xz
解决:

Build options
    Advanced  --->
        [] Force all downloads to have a valid hash

(我还没看到在哪加hash,干脆用这个了)

生成件

buildroot目录的output/images/路径下
可以直接用start-qemu.sh启动(它甚至还顺便构建了个qemu…)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值