busybox 移植使用

简介

  • busybox是Linux上的一个开源库,它整合了许多最常用的工具和命令,如rm, ls, gzip, tftp等,是嵌入式平台根文件系统中常用的构建模块。
  • 由于busybox程序小,占用内存少并且功能强大,编译后只有单个程序,特别适合资源敏感的嵌入式系统,因此常用来构建嵌入式平台的根文件系统。

使用

说明

  • 官网:http://www.busybox.net/
  • 下载地址:https://busybox.net/downloads/
  • 下载地址中包含了所有的busybox版本,有些是stable版本,有些是unstable版本,没有明确标明,unstable编译或使用过程中可能会遇到问题,最好使用stable版本。
  • 详细说明可通过官网查看。

编译和移植

  • busybox 的编译与Linux内核的编译过程类似
  1. 选择配置
make defconfig      //默认配置
make allyesconfig   //所有工具、命令选择配置
make allnoconfig    //所有工具、命令未选择配置
  • 选择后,会将预存的配置文件拷贝生成当前配置文件.config。
  1. 手动配置
make menuconfig
  • 可选操作,手动调整,会自动修改配置文件.config。
  • 配置时可以根据命令名进行搜索.
按 ?/ 键进入搜索输入界面
  • 异常:
Linux Error: curses.h: No such file or directory Problem Solution
* 原因:make menuconfig需要ncurses库的支持。
* 解决办法:sudo apt install libncurses5-dev libncursesw5-dev
  1. 编译
make CROSS_COMPILE=arm-linux-
  • 使用交叉编译工具(arm-linux-gcc),编译busybox。

使用

  • 编译完后会在库根目录生成busybox程序,busybox支持多种使用方式,如下:
  1. busybox后直接跟命令,如
./busybox ls
./busybox tftp
  1. 直接将busybox重命名,如
cp busybox ls
./ls
cp busybox ps
./ps
  1. 创建符号链接, 如
ln -s busybox ls 
ls
ln -s busybox ps
ps

安装

  • 以上三种使用方式,创建链接的方式最好,因此构建嵌入式根文件系统中也是采用的第三张方式,busybox安装程序可以帮忙一次性生成所有的软链接。
  • make menuconfig 中可以设置安装目录,默认是busybox根目录下的_install。
  • 安装命令如下:
make CROSS_COMPILE=arm-linux- install
  • 使用make install命令,在busybox-1.31.1版本上会出现异常:安装的程序不是交叉编译版本,而是重新编译了一份本地版本,不确定是否哪里配置错误。
  • 构建嵌入式根文件系统时,只需要将_install目录下的所有文件拷贝至根文件系统目录下。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MicroBlaze是Xilinx公司推出的一种32位软核处理器,可以在FPGA(现场可编程门阵列)上实现。移植Linux到MicroBlaze处理器上可以为FPGA提供完整的操作系统支持。 MicroBlaze处理器的移植Linux主要包括以下几个步骤: 第一步是为MicroBlaze处理器选择适当的Linux内核版本。根据硬件资源和需求选择合适的内核版本,Xilinx的网站上可获取针对MicroBlaze处理器的Linux内核源码。 第二步是配置交叉编译环境。由于MicroBlaze处理器是软核,并非常见的硬件架构,所以需要使用交叉编译器进行编译。可以使用Xilinx提供的交叉编译工具链或其他合适的交叉编译器。 第三步是配置Linux内核。根据具体硬件平台进行相关配置,如处理器频率、内存大小、外设等。还需要对Linux内核进行适应性配置,根据实际需求开启或关闭相应的功能模块。 第四步是编译内核。使用交叉编译器编译配置好的Linux内核,并生成可执行文件。 第五步是构建根文件系统。根文件系统包括系统启动脚本、设备文件、系统工具和库等。可以使用BusyBox等工具来构建根文件系统,并配置启动过程中需要加载的模块。 最后一步是将编译好的内核和根文件系统烧写到FPGA的存储介质中,如Flash或SD卡。确保FPGA能够正确加载并启动Linux系统。 总的来说,MicroBlaze移植Linux主要涉及适配内核、配置交叉编译环境、编译内核、构建根文件系统和烧写到FPGA等步骤。移植成功后,MicroBlaze处理器将具备完整的操作系统支持,可以运行Linux应用程序。这为FPGA的应用开发提供了更多的灵活性和扩展性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值