美文网首页
移植最新BusyBox

移植最新BusyBox

作者: kunix | 来源:发表于2016-09-29 20:19 被阅读0次
    1. 好了, 下面开始作死.去busybox.net 下载最新的1.26.0, 小白都能看懂 的一步一步截图教程.
    Paste_Image.png
    1. 解压后
    Paste_Image.png

    现在是没有_install这个文件夹的

    1. 我们去改一下Makefile吧.
    Paste_Image.png

    去164行改你的交叉编译工具
    和在190行改你的架构

    Paste_Image.png Paste_Image.png

    改后

    Paste_Image.png
    1. 用make menuconfig去配置一下busybox,
    Paste_Image.png

    在Busybox Settings选项处回车进入(后面同样)

    Paste_Image.png

    进入build options

    Paste_Image.png

    空格键切换红框为*即可. 目的把busybox编译成静态链接的可执行文件.不用依赖其他库运行.

    Paste_Image.png

    方向右键切换到exit退出, 回到上一级目录

    进入红框选项

    Paste_Image.png

    把红框也空格键切换为*, 目的是设置为VI风格编辑命令行

    Paste_Image.png

    好了, 切换exit退出

    再退出

    Paste_Image.png
    1. 下面是为驱动开发命令的设置, 没有需要的请跳过.
    Paste_Image.png Paste_Image.png
    1. 是否要支持mdev, 根据自己情况选择此项.
    Paste_Image.png

    如图选上

    Paste_Image.png

    留意这里有个blkdiscard, 下面可能有彩蛋.

    Paste_Image.png
    1. 切换exit退出

    再退出

    在yes处回车保存即可.

    Paste_Image.png
    1. make一下看看

    miscutils/nandwrite.c: In function 'nandwrite_main':miscutils/nandwrite.c:151: error: 'MTD_FILE_MODE_RAW' undeclared (first use in this function)miscutils/nandwrite.c:151: error: (Each undeclared identifier is reported only oncemiscutils/nandwrite.c:151: error: for each function it appears in.)make[1]: *** [miscutils/nandwrite.o] Error 1make: *** [miscutils] Error 2

    出现以上错误了^^

    查了一下
    MTD_FILE_MODE_RAW出现在本机的/usr/include/mtd/mtd-abi.h头文件中,
    那我复制到include下面试试

    还要去给提示错误的那个c文件添加上头文件

    vi miscutils/nandwrite.c +54

    Paste_Image.png
    1. 再make一下

    util-linux/blkdiscard.c: In function 'blkdiscard_main':util-linux/blkdiscard.c:72: error: 'BLKSECDISCARD' undeclared (first use in this function)util-linux/blkdiscard.c:72: error: (Each undeclared identifier is reported only onceutil-linux/blkdiscard.c:72: error: for each function it appears in.)make[1]: *** [util-linux/blkdiscard.o] Error 1make: *** [util-linux] Error 2
    又出现错误了, 仔细看看 blkdiscard不正是上面提到的那个模块吗. 应该用不到,无去掉它试试

    Paste_Image.png
    1. 很多未定义^^

    util-linux/lib.a(nsenter.o): In function nsenter_main':nsenter.c:(.text.nsenter_main+0x188): undefined reference tosetns'coreutils/lib.a(sync.o): In function sync_main':sync.c:(.text.sync_main+0x78): undefined reference tosyncfs'collect2: ld returned 1 exit statusNote: if build needs additional libraries, put them in CONFIG_EXTRA_LDLIBS.Example: CONFIG_EXTRA_LDLIBS="pthread dl tirpc audit pam"make: *** [busybox_unstripped] Error 1
    那试试不编译这两个模块.

    Paste_Image.png Paste_Image.png Paste_Image.png
    Paste_Image.png
    1. 保存, 再make
    Paste_Image.png

    没有错误.

    1. 接着make install
    Paste_Image.png Paste_Image.png Paste_Image.png
    1. 好像成功了, 因为尝鲜用,就不一一google每个错误了.

    相关文章

      网友评论

          本文标题:移植最新BusyBox

          本文链接:https://www.haomeiwen.com/subject/jcklyttx.html