忘记了csdn不能粘贴图片的, 截好的图都丢了
补了几张放在下面的链接,
很是生气@_@
http://www.jianshu.com/p/717472476071
1. 好了, 下面开始作死.去busybox.net 下载最新的1.26.0, 小白都能看懂 的一步一步截图教程.
2. 解压后
现在是没有_install这个文件夹的
3. 我们去改一下Makefile吧.
去164行改你的交叉编译工具
和在190行改你的架构
4. 用make menuconfig去配置一下busybox,
在Busybox Settings选项处回车进入(后面同样)
进入build options
空格键切换红框为*即可. 目的把busybox编译成静态链接的可执行文件.不用依赖其他库运行.
方向右键切换到exit退出, 回到上一级目录
进入红框选项
把红框也空格键切换为*, 目的是设置为VI风格编辑命令行
好了, 切换exit退出
再退出
5. 下面是为驱动开发命令的设置, 没有需要的请跳过.
6. 是否要支持mdev, 根据自己情况选择此项.
如图选上
留意这里有个blkdiscard, 下面可能有彩蛋.
7. 切换exit退出
再退出
在yes处回车保存即可.
8. 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 once
miscutils/nandwrite.c:151: error: for each function it appears in.)
make[1]: *** [miscutils/nandwrite.o] Error 1
make: *** [miscutils] Error 2
出现以上错误了^^
查了一下
MTD_FILE_MODE_RAW出现在本机的/usr/include/mtd/mtd-abi.h头文件中,
那我复制到include下面试试
还要去给提示错误的那个c文件添加上头文件
# vi miscutils/nandwrite.c +54
9. 再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 once
util-linux/blkdiscard.c:72: error: for each function it appears in.)
make[1]: *** [util-linux/blkdiscard.o] Error 1
make: *** [util-linux] Error 2
又出现错误了, 仔细看看 blkdiscard不正是上面提到的那个模块吗. 应该用不到,无去掉它试试
10. 很多未定义^^
util-linux/lib.a(nsenter.o): In function `nsenter_main':
nsenter.c:(.text.nsenter_main+0x188): undefined reference to `setns'
coreutils/lib.a(sync.o): In function `sync_main':
sync.c:(.text.sync_main+0x78): undefined reference to `syncfs'
collect2: ld returned 1 exit status
Note: 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
那试试不编译这两个模块.
11. 保存, 再make
没有错误.
12. 接着make install
13. 好像成功了, 因为尝鲜用,就不一一google每个错误了.