busybox安装出错:“arm-none-linux-gnueabi-gcc: not found”

本文介绍了解决在Ubuntu12.04系统中使用BusyBox时遇到的交叉编译错误“arm-none-linux-gnueabi-gcc:not found”的详细步骤。包括下载并安装交叉编译工具、配置环境变量及安装32位库等关键操作。

1 软件环境

Ubuntu 12.04.1 LTS
busybox 1.21.1
arm-linux-4.4.1

2 问题描述

最近在制作linux最小系统的时候需要用到busybox软件,在编译busybox软件时报错“arm-none-linux-gnueabi-gcc: not found”。说明在编译时没有找到交叉编译工具。

这里写图片描述

3 解决办法

ubuntu系统中没有安装交叉编译工具,因此需要安装一个。下载交叉编译工具文件arm-linux-4.4.1.tar.gz,放在linux的一个目录下,这个目录将会成为交叉编译工具的安装目录,不能随便删除了。我的存放目录是“/usr/local/arm”。

这里写图片描述

采用shell命令:tar -xvf arm-linux-4.4.1.tar.gz 4.4.1 解压压缩包并重名为“4.4.1”。

这里写图片描述

解压成功后,采用ls指令查看,发现arm目录下多了一个4.4.1目录,这就是刚才的解压文件目录。

这里写图片描述

查看目录4.4.1中的内容,可知里边有一个arm-none-linux-gnueabi目录。进入之后查看内容,可知里边有一个bin目录,再进去查看,可以找到arm-none-linux-gnueabi相关的交叉编译工具可执行文件。至此已经找到交叉编译工具的存放路径:/usr/local/arm/4.4.1/arm-none-linux-gnueabi/bin

这里写图片描述

接下来需要配置环境变量,采用shell指令:vim /etc/profile 打开环境变量配置文件。在最后一行添加:export PATH=$PATH:/usr/local/arm/4.4.1/arm-none-linux-gnueabi/bin 保存后退出。

这里写图片描述

这里写图片描述

执行命令:source /etc/profile使刚才修改的环境变量生效。

这里写图片描述

验证一下是否安装成功,在shell命令行输入:arm-none-linux-gnueabi-,然后按Tab键,可以显示所有的arm-none-linux-gnueabi工具。这说明环境变量设置成功。

这里写图片描述

在shell命令行输入:arm-none-linux-gnueabi-gcc -v,会显示交叉编译器的版本信息。如果还是提示未找到arm-none-linux-gnueabi-gcc,则可能是缺少32位的库造成的。因此Ubuntu12.04用的是64位的,相应的库也是64位的,因此缺少32位的库。采用指令:sudo apt-get install ia32-libs安装32位的库之后重新执行arm-none-linux-gnueabi-gcc -v 指令。

这里写图片描述

重新对busybox进行配置,然后执行make指令成功。上边的问题解决。

make: *** [applets_dir] Error 2 root@zhaotianzhong:/home/minilinux/busybox-1.22.1# source /etc/profile root@zhaotianzhong:/home/minilinux/busybox-1.22.1# arm-none-linux-gnueabi-gcc -v Using built-in specs. Target: arm-none-linux-gnueabi Configured with: /scratch/julian/2009q3-respin-linux-lite/src/gcc-4.4/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --enable-extra-sgxxlite-multilibs --with-arch=armv5te --with-gnu-as --with-gnu-ld --with-specs='%{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables} %{O2:%{!fno-remove-local-statics: -fremove-local-statics}} %{O*:%{O|O0|O1|O2|Os:;:%{!fno-remove-local-statics: -fremove-local-statics}}}' --enable-languages=c,c++ --enable-shared --disable-lto --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery G++ Lite 2009q3-67' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/julian/2009q3-respin-linux-lite/install/arm-none-linux-gnueabi/libc --with-gmp=/scratch/julian/2009q3-respin-linux-lite/obj/host-libs-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/julian/2009q3-respin-linux-lite/obj/host-libs-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-ppl=/scratch/julian/2009q3-respin-linux-lite/obj/host-libs-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-cloog=/scratch/julian/2009q3-respin-linux-lite/obj/host-libs-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/julian/2009q3-respin-linux-lite/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/julian/2009q3-respin-linux-lite/install/arm-none-linux-gnueabi/bin Thread model: posix gcc version 4.4.1 (Sourcery G++ Lite 2009q3-67) root@zhaotianzhong:/home/minilinux/busybox-1.22.1# make /home/minilinux/busybox-1.22.1/scripts/gcc-version.sh: line 11: arm-linux-gnueabi-gcc: command not found CC applets/applets.o /bin/sh: 1: arm-linux-gnueabi-gcc: not found make[1]: *** [applets/applets.o] Error 127 make: *** [applets_dir] Error 2 root@zhaotianzhong:/home/minilinux/busybox-1.22.1#
最新发布
12-24
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值