您尚未登录。

楼主 # 2023-09-20 16:25:35

易百纳技术社区
会员
注册时间: 2023-06-12
已发帖子: 45
积分: 46

Hi3519DV500利用 busybox 制作根文件系统

文章来源:易百纳技术社区
利用busybox制作根文件系统需要先获取busybox源代码,然后配置、编译和安装 busybox,操作成功后开始制作根文件系统。

获取 busybox 源代码

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

配置 busybox

进入busybox所在目录,进行配置操作需要输入如下命令:

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推荐的交叉编译器,配置好后保存并退出。

--- 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的具体操作如下:

make
make install

编译并安装成功后,在busybox的_install目录下生成以下文件:

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的基础上制作根文件系统,操作步骤如下。

创建文件夹,拷贝相应工具。

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Þ。
lib目录是存放应用程序所需要的库文件,根据应用程序需要拷贝相应的库文件。
完成以上两个步骤,一个完整的根文件系统就生成了。

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

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn