busybox安装 安装busybox的几种方法

主机:ubuntu 8.04 x86_32

交叉编译器:/usr/local/arm/3.4.1/bin/arm-linux-

Busybox版本:busybox-1.13.2.tar.bz2

之前使用3.3.2的编译器出错,难以修改,改用3.4.1的,发现3.3.2的最好用来编译uboot1.1.4,然后内核与busybox使用3.4.1编译!!!!!!!!!

Busybox嵌入式Linux中的瑞士军刀

BusyBox - The Swiss Army Knife of EmbeddedLinux

首先,去http://busybox.net/下载最新版本的busybox,目前最新版为29 November 2008 -- BusyBox1.13.1

解压,进入目录,

make menuconfig

Busybox Settings-->BuildOptions--> Build BusyBox as a static binary (noshared libs) 选上。静态编译,为了以后方便。

在Busybox Settings-->BuildOptions-->Cross Compiler Prefix

填入交叉编译器路径。这里用3.3.2的版本。

由于编译器版本,glibc的版本匹配问题,编译过程中可能会出错。有些错误是莫名其妙的。

编译过程中出现了

In fileincluded from miscutils/watchdog.c:13:

/usr/local/arm/3.3.2/arm-linux/sys-include/linux/watchdog.h:17:error: parse error before "__u32"

/usr/local/arm/3.3.2/arm-linux/sys-include/linux/watchdog.h:19:error: parse error before "identity"

/usr/local/arm/3.3.2/arm-linux/sys-include/linux/watchdog.h:20:error: parse error before '}' token

make[1]: ***[miscutils/watchdog.o] 错误 1

make: ***[miscutils] 错误 2

可是/usr/local/arm/3.3.2/arm-linux/sys-include/linux/watchdog.h相关行

structwatchdog_info {

__u32options;

__u32firmware_version;

__u8identity[32];

};

并没有语法错误,解决办法为,去掉相应选项,

make menuconfig

去掉Miscellaneous Utilities--->里的最后一个watchdog(实际上它是指pc机上的,和我们板子的看门狗没有关系)

继续make

networking/brctl.c: In function `brctl_main':

networking/brctl.c:186: error: `SIOCBRADDBR' undeclared (firstuse in this function)

networking/brctl.c:186: error: (Each undeclared identifier isreported only once

networking/brctl.c:186: error: for each function it appearsin.)

networking/brctl.c:186: error: `SIOCBRDELBR' undeclared (firstuse in this function)

networking/brctl.c:202: error: `SIOCBRADDIF' undeclared (firstuse in this function)

networking/brctl.c:202: error: `SIOCBRDELIF' undeclared (firstuse in this function)

make[1]: ***[networking/brctl.o] 错误 1

make: *** [networking] 错误 2

在3.3.2的编译器/usr/local/arm/3.3.2/arm-linux/sys-include/linux/sockios.h里没有找到

SIOCBRDELBR等相关定义,解决办法:在自己电脑的内核头文件里找到相关定义,并加入。

稍微新一点的内核都应该增加了以下定义,

#defineSIOCBRADDBR 0x89a0

#defineSIOCBRDELBR 0x89a1

#defineSIOCBRADDIF 0x89a2

#defineSIOCBRDELIF 0x89a3

把他们加入到busybox的networking/brctl.c

继续,make

networking/ifenslave.c出错,出错信息太多,直接去掉选项。

接着,networking/interface.o出错,

ARPHRD_INFINIBAND没有定义,

由主机上的内核源码目录include/linux/if_arp.h可知,其值为32

在networking/interface.c合适的地方加上

#defin e ARPHRD_INFINIBAND32

再make,通过编译。

然后make install

busybox安装 安装busybox的几种方法

在 _install目录下得到所有二进制文件。

  

爱华网本文地址 » http://www.aihuau.com/a/25101015/255165.html

更多阅读

家用不锈钢电水壶除垢的几种方法 电水壶除水垢

家用不锈钢电水壶除垢的几种方法——简介 不锈钢电水壶,作为一种常用家用小家电,在外山设计上并没有多少的特点,在使用过程中在常出现的现象就是在内壁上附着的水垢,不锈钢电水壶水垢,不仅会影响电水壶的使用效率,同时还对电水壶的使用寿

查询工商银行卡余额的几种方法 工商银行余额查询

查询工商银行卡余额的几种方法——简介 使用了工行银行一段时间了,有一天突然想查询工商银行卡上的余额了该怎么查询了,下面教你怎么查询。查询工商银行卡余额的几种方法——工具/原料拥有一张工行的银行卡,知道密码。查询工商银行卡

白凡士林治疗牛皮癣(银屑病)的几种方法介绍 银屑病治疗方法

一、什么是白凡士林白凡士林,WHITEVASELIN,是从石油中得到的多种烃的半固体混合物,为白色均匀的软膏状物;无臭或几乎无臭;与皮肤接触有滑腻感;具有一定的拉丝性。凡士林非常便宜,很多爱美的女士因此对它不屑一顾。事实上,与市场上其他更加

让笔记本电脑无线上网的几种方法 台式机无线上网

相信现在很多朋友都使用轻便笔记本, 对于电脑基础不是很好朋友, 笔记本无线上网就成为一个难题, 不像台式机直接上网线就可以了, 笔记本一般都不会固定在一个位置, 能无线上网才能最大的发挥用处. 这里就告诉你让笔记本电脑无线上网

双线机房常用的几种方法:双线双IP,双线单IP,智能DNS

一、 双IP双线路实现方式  双IP双线路实现方式是指在一台服务器上安装两块网卡,分别接入电信网线与网通网线并设置一个网通IP与一个电信IP,这样一台服务器上就有了两个IP地址,需要在服务器上添加网通或电信的路由表来实现网通用户与

声明:《busybox安装 安装busybox的几种方法》为网友不似经年分享!如侵犯到您的合法权益请联系我们删除