busybox 编译过程几个错误处理

解压busybox1.7.0,然后在该目录下用make menuconfig 出现配置界面,有几个地方在配置的时候要注意一下:

(1)                              Miscellaneous Utilities  --->

                 [] taskset要去掉

       如果不去掉,出错信息:

 miscutils/taskset.c:17: error: parse error before ''*'' token

miscutils/taskset.c:18: warning: function declaration isn''t a prototype

miscutils/taskset.c: In function `__from_cpuset'':

miscutils/taskset.c:22: error: `CPU_SETSIZE'' undeclared (first use in this function)

miscutils/taskset.c:22: error: (Each undeclared identifier is reported only once

miscutils/taskset.c:22: error: for each function it appears in.)

miscutils/taskset.c:26: warning: implicit declaration of function `CPU_ISSET''

miscutils/taskset.c:26: error: `mask'' undeclared (first use in this function)

miscutils/taskset.c: In function `taskset_main'':

miscutils/taskset.c:47: error: `cpu_set_t'' undeclared (first use in this function)

miscutils/taskset.c:47: error: parse error before "mask"

miscutils/taskset.c:68: warning: implicit declaration of function `CPU_ZERO''

miscutils/taskset.c:68: error: `new_mask'' undeclared (first use in this function)

miscutils/taskset.c:69: error: `CPU_SETSIZE'' undeclared (first use in this function)

miscutils/taskset.c:71: warning: implicit declaration of function `CPU_SET''

miscutils/taskset.c:78: error: `mask'' undeclared (first use in this function)

 

(2)                              Linux Module Utilities  --->

          []Support version 2.2.x to 2.4.x Linux kernels 要去掉

如果不去掉的话,出错信息:

modutils/lib.a(insmod.o)(.text.insmod_main+0x360): In function `insmod_main'':

: undefined reference to `query_module''

modutils/lib.a(insmod.o)(.text.insmod_main+0x394): In function `insmod_main'':

: undefined reference to `query_module''

modutils/lib.a(insmod.o)(.text.insmod_main+0x440): In function `insmod_main'':

: undefined reference to `query_module''

modutils/lib.a(insmod.o)(.text.insmod_main+0x494): In function `insmod_main'':

: undefined reference to `query_module''

modutils/lib.a(insmod.o)(.text.insmod_main+0x570): In function `insmod_main'':

: undefined reference to `query_module''

modutils/lib.a(insmod.o)(.text.insmod_main+0xc10): In function `insmod_main'':

: undefined reference to `create_module''

collect2: ld returned 1 exit status

其他的配就可以了,这两个地方要是不去掉的话,编译不过。

 

http://blog.mcuol.com/User/longren/Article/9633_1.htm

http://www.91linux.com/html/article/qianrushiyingyong/20080216/9717.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于busybox的交叉编译,您可以按照以下步骤进行操作: 1. 获取交叉编译工具链:您需要首先获取与目标平台相匹配的交叉编译工具链,以便在本机上进行编译。您可以从目标平台的供应商或社区获取这个工具链。 2. 下载busybox源代码:您可以从busybox的官方网站(https://busybox.net/downloads/)上下载最新的稳定版本的源代码。 3. 设置环境变量:将交叉编译工具链添加到您的环境变量中,以便系统能够找到它们。例如,您可以将工具链的路径添加到`PATH`变量中。 4. 配置busybox:在命令行中进入busybox源代码目录,并运行`make menuconfig`命令来配置busybox。这将打开一个文本菜单界面,您可以在其中选择要包含在busybox中的功能。 5. 设置目标平台:在配置菜单中设置目标平台的体系结构和编译选项。这些选项将取决于您的目标平台和交叉编译工具链。 6. 编译busybox:运行`make`命令来开始编译busybox。这将使用交叉编译工具链在本机上生成目标平台的可执行文件。 7. 安装busybox:运行`make install`命令来安装busybox。这将把生成的可执行文件复制到指定的安装目录中。 完成上述步骤后,您将得到一个交叉编译后的busybox可执行文件,可以将其部署到目标平台上使用。请注意,具体的步骤可能会因您使用的交叉编译工具链和目标平台而有所不同。因此,在进行交叉编译之前,请确保您已经阅读并理解了相应工具链和平台的文档和指南。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值