马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
利用busybox制作根文件系统需要先获取busybox源代码,然后配置、编译和安装 busybox,操作成功后开始制作根文件系统。 获取 busybox 源代码配置 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的具体操作如下:
编译并安装成功后,在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的基础上制作根文件系统,操作步骤如下。 1.创建文件夹,拷贝相应工具。
- 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目录是存放应用程序所需要的库文件,根据应用程序需要拷贝相应的库文件。
完成以上两个步骤,一个完整的根文件系统就生成了。
|