首页 > 技术知识 > 正文

Hi3519DV500利用 busybox 制作根文件系统-hi3516dv300开发教程

利用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目录是存放应用程序所需要的库文件,根据应用程序需要拷贝相应的库文件。

完成以上两个步骤,一个完整的根文件系统就生成了.

猜你喜欢