硬汉嵌入式论坛

 找回密码
 立即注册
查看: 507|回复: 0
收起左侧

Hi3519DV500利用 busybox 制作根文件系统

[复制链接]

6

主题

0

回帖

18

积分

新手上路

积分
18
发表于 2023-9-20 16:29:41 | 显示全部楼层 |阅读模式
本帖最后由 易百纳 于 2023-9-20 16:35 编辑

文章来源:易百纳技术社区

利用busybox制作根文件系统需要先获取busybox源代码,然后配置、编译和安装 busybox,操作成功后开始制作根文件系统。

获取 busybox 源代码
成功安装SDK后,busybox源代码补丁就存放在open_source/busybox目录中。要获取busybox源代码也可以从网站https://busybox.net/下载.

配置 busybox
进入busybox所在目录,进行配置操作需要输入如下命令:
[C] 纯文本查看 复制代码
cd open_source/busybox/busybox-1.34.1
patch -p1 < ../busybox-1.34.1.patch
cp config_arrch64_a55_softfp_neon.config //指定配置文件
make menuconfig


busybox的配置界面和内核配置相似,其功能选项容易理解,可以根据自己的需求选择配置。
在 Settings ---> Build Options中注意此选项:CONFIG_CROSS_COMPILER_PREFIX选项用于选择SDK推荐的交叉编译器,配置好后保存并退出。
[C] 纯文本查看 复制代码
--- Build Options
[ ] Build static binary (no shared libs)
[ ] Build position independent executable
[ ] Force NOMMU build
[ ] Build shared libbusybox
(aarch64-v01c01-linux-musl-) Cross compiler prefix
() Path to sysroot
(-w -mcpu=cortex-a53) Additional CFLAGS


编译和安装 busybox
编译和安装 busybox的具体操作如下:
[C] 纯文本查看 复制代码
make
make install


编译并安装成功后,在busybox的_install目录下生成以下文件:
[C] 纯文本查看 复制代码
drwxrwxr-x 2 xxx XXX 4096 Feb 13 11:41 bin
lrwxrwxrwx 1 xxx XXX 11 Feb 13 11:41 linuxrc -> bin/busybox
drwxrwxr-x 2 xxx XXX 4096 Feb 13 11:41 sbin
drwxrwxr-x 4 xxx XXX 4096 Feb 13 11:41 usr


其中xxx表示用户;XXX表示组。

制作根文件系统
成功安装SDK后,在bsp/pub/目录中存放已制作好的根文件系统。
如有需要可在busybox的基础上制作根文件系统,操作步骤如下。
  • 创建文件夹,拷贝相应工具。
[C] 纯文本查看 复制代码
mkdir rootbox
cd rootbox
cp -r open_source/busybox/busybox-1.34.1/_install/* .
mkdir etc dev lib tmp var mnt home proc


2. 配置etc、lib、dev目录的必需文件。
  • etc目录可参考系统/etc下的文件。其中最主要的文件包括inittab、fstab、init.d/rcS文件等,这些文件最好从busybox的examples目录下拷贝过来,根据需要自行修改。
  • dev目录下的设备文件,可以直接从系统中拷贝过来或者使用mknod命令生成需要的设备文件。拷贝文件时请使用cp –R fi&#195;&#382;。
  • lib目录是存放应用程序所需要的库文件,根据应用程序需要拷贝相应的库文件。
完成以上两个步骤,一个完整的根文件系统就生成了。

文章来源:易百纳技术社区

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-28 21:46 , Processed in 0.257925 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表