title: busybox(二)编译

tag: arm

date: 2018-11-13 23:14:58

busybox(二)编译

  1. 解压,源码包在busybox-1.7.0.tar.bz2,

    tar xjf  busybox-1.7.0.tar.bz2
    cd busybox-1.7.0/
  2. 查看说明文档INSTALL,注意不能直接使用make install,这样会安装到pc上,破坏pc.应该要使用make CONFIG_PREFIX=xxx目录 install

     make menuconfig     # This creates a file called ".config"
    make # This creates the "busybox" executable
    make install # or make CONFIG_PREFIX=/path/from/root install
  3. 设置下交叉编译工具为arm-linux-,修改顶层Makefile

    CROSS_COMPILE   ?=arm-linux-
  4. 使用make menuconfig配置,发现提示错误,这是因为版本问题,修改下makefile

    book@100ask:/work/busybox-1.7.0$ make menuconfig
    Makefile:405: *** mixed implicit and normal rules: deprecated syntax
    Makefile:1242: *** mixed implicit and normal rules: deprecated syntax
    make: *** No rule to make target 'menuconfig'. Stop.

    修改以下内容

    顶层Makefile 405行:config %config: scripts_basic outputmakefile FORCE 改为:
    %config: scripts_basic outputmakefile FORCE 修改busybox-1.7.0 顶层Makefile 1242行:
    / %/: prepare scripts FORCE 改为:
    %/: prepare scripts FORCE 如果还不行
    要安装 sudo apt-get install libncurses5-dev libncursesw5-dev 这两个库才可以
  5. 修改配置项目,增加tab补全功能,busybox settings ---busybox libry tuning ----tab completion,输入y选择.其余模块的使能一般在Linux Module Utilities --->

  6. make

  7. 设置安装路径 make CONFIG_PREFIX=~/stu/first_fs install

  8. 可以看到文件链接到busybox,也就是说bin下面有个busybox的程序,其他ls等都链接到它

    book@100ask:~/stu/first_fs$ ls -l
    总用量 12
    drwxrwxr-x 2 book book 4096 11月 13 23:37 bin
    lrwxrwxrwx 1 book book 11 11月 13 23:37 linuxrc -> bin/busybox
    drwxrwxr-x 2 book book 4096 11月 13 23:37 sbin
    drwxrwxr-x 4 book book 4096 11月 13 23:37 usr book@100ask:~/stu/first_fs$ ls bin/ls -l
    lrwxrwxrwx 1 book book 7 11月 13 23:37 bin/ls -> busybox

busybox(二)编译的更多相关文章

  1. busybox的编译、使用及安装

    转载于:http://blog.sina.com.cn/wyw1976 busybox是什么? (1)busybox是Linux上的一个应用程序(application),即只有一个ELF文件头. ( ...

  2. webpack4 系列教程(二): 编译 ES6

    今天介绍webpack怎么编译ES6的各种函数和语法.敲黑板:这是webpack4版本哦, 有一些不同于webpack3的地方. >>> 本节课源码 >>> 所有课 ...

  3. 快速学习C语言二: 编译自动化, 静态分析, 单元测试,coredump调试,性能剖析

    上次的Hello world算是入门了,现在学习一些相关工具的使用 编译自动化 写好程序,首先要编译,就用gcc就好了,基本用法如下 gcc helloworld.c -o helloworld.o ...

  4. 20135218 Linux 实践二 编译模块

    20135218 姬梦馨 1.编写模块代码 模块构造函数:执行insmod或modprobe指令加载内核模块时会调用的初始化函数.函数原型必须是module_init(),括号内是函数指针 模块析构函 ...

  5. 运用busybox构建最小根文件系统

    平台:vmware下ubuntu14.04前期准备:安装交叉编译环境arm-linux-gcc-4.5.1;下载完成BusyBox 1.23.2一.busybox构建1.make menuconfig ...

  6. Linux根文件系统分析之init和busybox

    Hi,大家好!我是CrazyCatJack.今天给大家讲解Linux根文件系统的init进程和busybox的配置及编译. 先简单介绍一下,作为一个嵌入式系统,要想在硬件上正常使用的话.它的软件组成大 ...

  7. Gobblin编译支持CDH5.4.0

    作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 Gobblin的前身是linkedin的Camus,好多人也用过,准备用Gobblin的方式来抽 ...

  8. VS2015编译Qt5.7.0生成支持XP的静态库(很不错)

    一.编译工具 1.VS2015 编译Qt5.7.0的所需VS版本:Visual Studio 2013 (Update1)或Visual Studio 2015 (Update2).因为Update补 ...

  9. window下编译并使用google protobuf

    参考网址: http://my.oschina.net/chenleijava/blog/261263 http://www.ibm.com/developerworks/cn/linux/l-cn- ...

随机推荐

  1. MongoDB的导入与导出

    一.导入与导出可以操作本地的mongodb也可以是远程的mongodb,通用选项: -h host 主机 --port port 端口 -u username 用户名 -p password 密码 如 ...

  2. Python基础——8错误、调试和测试

    捕捉错误 try: print('try...') r = 10 / int('2') print('result:', r) except ValueError as e: print('Value ...

  3. Python中的一些小技巧

    1.Boolean值可以当做一个数值 a = [5,6,7,8,9] print(a[True]) #prints 6 print(a[False]) #prints 5 2.两种方法实现 a = 1 ...

  4. macos 下usb键盘问题.

    Mac 与PC键盘的对比及快捷键(黑苹果) https://www.jianshu.com/p/240f31f6f81a 剩下的就是 系统偏好设置 - 键盘 - 修饰键 - USB键盘(目标键盘) 把 ...

  5. C. Maximal Intersection(STL)

    这道题,关键在于怎么求多个区间的交集,使用multiset就可以 分别将 r , l 存在不同的mutiset中. 然后,我们来看一下 是不是 交集的 l 是最大的, 交集的 r 是最小的 #incl ...

  6. 正益移动推出新产品正益工作 实现PaaS+SaaS新组合

    近期,正益移动不仅将其AppCan 移动平台云化,还通过发布全新 SaaS 产品 -- 正益工作,这款集合了企业信息聚合.应用聚合.社交聚合为一体的企业移动综合门户,与 AppCan 平台一起实现了P ...

  7. C++笔记--thread pool【转】

    版权声明:转载著名出处 https://blog.csdn.net/gcola007/article/details/78750220 背景 刚粗略看完一遍c++ primer第五版,一直在找一些c+ ...

  8. Linux内存管理 (17)KSM

    专题:Linux内存管理专题 关键词:KSM.匿名页面.COW.madvise .MERGEABLE.UNMERGEABLE. KSM是Kernel Samepage Merging的意思,用于合并内 ...

  9. Outlook插件开发(非VSTO),欢迎交流

    https://www.cnblogs.com/Charltsing/p/OutlookSample.html 联系QQ:564955427 最近写了个Outlook插件,实现了读取邮件联系人的功能, ...

  10. MySQL数据类型的选择

    +++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据类型的选择时间:2019年2月22日内容:MySQL数据类型的选择范式参考重点:主要讲述MyS ...