【正点原子MP157连载】第十九章 Buildroot根文件系统构建-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7

【正点原子MP157连载】第十九章 Buildroot根文件系统构建-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7


Chapter1 【正点原子MP157连载】第十九章 Buildroot根文件系统构建-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7

原文链接:https://blog.csdn.net/weixin_55796564/article/details/122875464

第十九章 Buildroot根文件系统构建
上一小节我们学习了如何使用busybox来构建根文件系统,但是busybox构建的根文件系统不齐全,很多东西需要我们自行添加,比如lib库文件。在我们后面的驱动开发中很多第三方软件也需要我们自己去移植,这些第三方软件有很多又依赖其他的库文件,导致移植过程非常的繁琐。本章我们来学习一下另外一种更加实用的根文件系统构建方法,那就是使用buildroot来构建根文件系统。

19.1 何为buildroot?
19.1.1 buildroot简介
在上一章我们讲解了如何使用busybox构建文件系统,busybox仅仅只是帮我们构建好了一些常用的命令和文件,像lib库、/etc目录下的一些文件都需要我们自己手动创建,而且busybox构建的根文件系统默认没有用户名和密码设置。在后续的实验中,我们还要自己去移植一些第三方软件和库,比如alsa、iperf、mplayer等等。那么有没有一种傻瓜式的方法或软件,它不仅包含了busybox的功能,而且里面还集成了各种软件,需要什么软件就选择什么软件,不需要我们去移植。答案肯定是有的,buildroot就是这样一种工具,buildroot比busybox更上一层楼,buildroot不仅集成了busybox,而且还集成了各种常见的第三方库和软件,需要什么就选择什么,就跟我们去吃自助餐一样,想吃什么就拿什么。buildroot极大的方便了我们嵌入式Linux开发人员构建实用的根文件系统。
从busybox开始一步一步的构建根文件系统适合学习、了解根文件系统的组成,但是不适合做产品(主要是自己构建的话会有很多不完善、没有注意到的细节)。buildroot会帮我们处理好各种细节,根文件系统也会更加的合理、有效。因此在做产品的时候推荐大家使用buildroot来构建自己的根文件系统,当然了,类似buildroot的软件还有很多,比如yocto,一般半导体厂商会选择yocto来制作系统包,但是由于国内的网络环境,yocto编译起来会有很多问题!
buildroot和uboot、kernel很类似,我们需要到其官网上下载源码,然后对其进行配置,比如设置交叉编译器、设置目标CPU参数等,最主要的就是选择所需要的第三方库或软件。一切配置好以后就可以进行编译,编译完成了以后就会在一个文件夹里面存放好编译结果,也就是根文件系统。
注意!buildroot制作的根文件系统也是放到ubuntu的nfs目录下的rootfs文件夹,因此如果rootfs文件夹已经存放了前面busybox制作的根文件系统,那么请大家对其做一份备份,然后清空rootfs文件夹。

  • 21
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值