【嵌入式Linux环境搭建-09】最简根文件系统制作

09.最简根文件系统制作

下载busybox

官网下载 https://busybox.net/

$ wget https://busybox.net/downloads/busybox-1.34.1.tar.bz2 //最新稳定版
$ tar -xvf 	busybox-1.34.1.tar.bz2
$ cd busybox-1.34.1

编译

$ make menuconfig
 Setting
  [*] Build static binary (no shared libs)
   (aarch64-linux-gnu-) Cross compiler prefix  //注意 一定要指定交叉编译工具
$ make
$ file busybox /*确认编译生成的是 ARM 平台的
   busybox: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, for GNU/Linux 3.7.0, BuildID[sha1]=76a214150af2231f6762e712edc8dead5b55a00b, stripped
  */
$ make install //安装,默认安装路径为_install
$ cd _install
$ ls
  bin  linuxrc  sbin  usr  

填充内容

$ mkdir dev etc var proc tmp home root mnt sys //创建需要的目录
$ cp -rf ../examples/bootfloppy/etc/* etc/    拷贝最简示例配置,*/
$ cp /usr/local/aarch64-linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/aarch64-linux-gnu/libc/lib/  . -a   //拷贝编译工具链里的库
$ du -mh lib   /*查看lib库的大小
45M	lib/debug
228M	lib
 */
$ rm  lib/*.a     【裁剪,删除掉静态库文件】
$ aarch64-linux-gnu-strip  lib/*  【裁剪掉库里的调试信息】
$ rm -rf lib/debug/  //删掉不需要的库
$ du -mh lib   /*查看lib库的大小
   8.5M	lib/
  */
//还是大,接着删
$ cd lib
$ rm -f libstdc++*
$ rm -f libtsan*
$ rm -f libgfortran*

/*********查看大小*********/
$ cd ..
$ du -mh lib
$ cd ..
$ du -mh _install/
    7.2M够了
/************************/
$ cd _install/
$ sudo mknod dev/null c 1 3
$ sudo mknod   dev/console  c  5  1
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值