busybox(二)编译
title: busybox(二)编译
tag: arm
date: 2018-11-13 23:14:58
busybox(二)编译
解压,源码包在
busybox-1.7.0.tar.bz2,tar xjf busybox-1.7.0.tar.bz2
cd busybox-1.7.0/
查看说明文档
INSTALL,注意不能直接使用make install,这样会安装到pc上,破坏pc.应该要使用make CONFIG_PREFIX=xxx目录 installmake menuconfig # This creates a file called ".config"
make # This creates the "busybox" executable
make install # or make CONFIG_PREFIX=/path/from/root install
设置下交叉编译工具为
arm-linux-,修改顶层MakefileCROSS_COMPILE ?=arm-linux-
使用
make menuconfig配置,发现提示错误,这是因为版本问题,修改下makefilebook@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 这两个库才可以
修改配置项目,增加tab补全功能,busybox settings ---busybox libry tuning ----tab completion,输入y选择.其余模块的使能一般在
Linux Module Utilities --->中make
设置安装路径
make CONFIG_PREFIX=~/stu/first_fs install可以看到文件链接到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(二)编译的更多相关文章
- busybox的编译、使用及安装
转载于:http://blog.sina.com.cn/wyw1976 busybox是什么? (1)busybox是Linux上的一个应用程序(application),即只有一个ELF文件头. ( ...
- webpack4 系列教程(二): 编译 ES6
今天介绍webpack怎么编译ES6的各种函数和语法.敲黑板:这是webpack4版本哦, 有一些不同于webpack3的地方. >>> 本节课源码 >>> 所有课 ...
- 快速学习C语言二: 编译自动化, 静态分析, 单元测试,coredump调试,性能剖析
上次的Hello world算是入门了,现在学习一些相关工具的使用 编译自动化 写好程序,首先要编译,就用gcc就好了,基本用法如下 gcc helloworld.c -o helloworld.o ...
- 20135218 Linux 实践二 编译模块
20135218 姬梦馨 1.编写模块代码 模块构造函数:执行insmod或modprobe指令加载内核模块时会调用的初始化函数.函数原型必须是module_init(),括号内是函数指针 模块析构函 ...
- 运用busybox构建最小根文件系统
平台:vmware下ubuntu14.04前期准备:安装交叉编译环境arm-linux-gcc-4.5.1;下载完成BusyBox 1.23.2一.busybox构建1.make menuconfig ...
- Linux根文件系统分析之init和busybox
Hi,大家好!我是CrazyCatJack.今天给大家讲解Linux根文件系统的init进程和busybox的配置及编译. 先简单介绍一下,作为一个嵌入式系统,要想在硬件上正常使用的话.它的软件组成大 ...
- Gobblin编译支持CDH5.4.0
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 Gobblin的前身是linkedin的Camus,好多人也用过,准备用Gobblin的方式来抽 ...
- VS2015编译Qt5.7.0生成支持XP的静态库(很不错)
一.编译工具 1.VS2015 编译Qt5.7.0的所需VS版本:Visual Studio 2013 (Update1)或Visual Studio 2015 (Update2).因为Update补 ...
- window下编译并使用google protobuf
参考网址: http://my.oschina.net/chenleijava/blog/261263 http://www.ibm.com/developerworks/cn/linux/l-cn- ...
随机推荐
- 浅谈TCP IP协议栈(二)IP地址
上一节大致了解TCP/IP协议栈是个啥东西,依旧是雾里看花的状态,有很多时候学一门新知识时,开头总是很急躁,无从下手,刚学会一点儿,却发现连点皮毛都不算,成就感太低,所以任何时候学习最重要的是要在合适 ...
- c/c++ 继承与多态 静态调用与动态调用
静态调用,与动态调用. 动态调用条件:必须用父类的引用或者指针,并且调用的必须是虚方法. #include <iostream> class Base{ public: virtual i ...
- c/c++ 继承与多态 友元与继承
问题1:类B是类A的友元类,类C是类B的友元类,那么类C是类A的友元类吗?函数fun是类B的友元函数,那么fun是类A的友元函数吗? 都不是,友元关系不能传递. 问题2:类B是类A的友元类,类C是类B ...
- python3 Queue(单向队列)
创建队列 import queue q = queue.Queue() empty(如果队列为空,返回True) import queue q = queue.Queue() print(q.empt ...
- deepin 15.8桌面系统
深度桌面环境是深度科技自主开发的美观易用.极简操作的桌面环境,主要由桌面.启动器.任务栏.控制中心.窗口管理器等组成,系统中预装了 WPS Office.搜狗输入法.有道词典.网易云音乐以及深度特色应 ...
- 如何设置非管理员用户配置特定的IIS站点
如何设置非管理员用 户配置特定的IIS站点 一. 添加IIS管理服务 二. 启动管理服务 勾选启用远程连接后.点右边的应用 三. 设 ...
- LeetCode算法题-Maximum Product of Three Numbers(Java实现)
这是悦乐书的第275次更新,第291篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第143题(顺位题号是628).给定一个整数数组,从其中找出三个数,使得乘积最大.例如: ...
- ORM杂记
1.反射练习 import sys class Person(object): def __init__(self, name): self.name = name def eat(self, foo ...
- jdk的安装及环境变量的配置
一.JDK的下载 1.首先打开JDK的官网(点击打开链接),找到JAVA SE 7u71/72中的JDK,选择Download 2.然后如下图,选择Accept License Agreement,则 ...
- 用 C# 编写 C# 编译器,先有鸡还是先有蛋?
前段时间翻译了一篇文章 微软是如何重写 C# 编译器并使它开源的,文章讲了微软用 C# 重写 C# 编译器的坎坷路,引发了一些童鞋的思考:用 C# 编写 C# 编译器(Roslyn),那么 C# 编译 ...