busybos常见的错误详解

时间:2022-04-21 15:42:40

 错误一
make menuconfig 图像界面无法启动
scripts/kconfig/mconf arch/arm/Kconfig
#
# using defaults found in /boot/config-2.6.27.5-117.fc10.i686
#
/boot/config-2.6.27.5-117.fc10.i686:797:warning: symbol value 'm' invalid for IP_DCCP_CCID3
/boot/config-2.6.27.5-117.fc10.i686:800:warning: symbol value 'm' invalid for IP_DCCP_TFRC_LIB
/boot/config-2.6.27.5-117.fc10.i686:3629:warning: symbol value 'm' invalid for GFS2_FS_LOCKING_DLM
Your display is too small to run Menuconfig!
It must be at least 19 lines by 80 columns.
make[1]: *** [menuconfig] 错误 1
make: *** [menuconfig] 错误 2
原因:shell窗口面积过小,将窗口最大化后,即可启动,   然后即可恢复。
产生原因,未明

  备注:linux博大精深,此错误不由何原因产生,不知由何原因消失。总之,第二天再次使用该命令时,

  错误消失了。

  错误2

  busybox 编译不过去,错误如下

  CC      networking/libiproute/iptunnel.o
In file included from /opt/EmbedSky/4.3.3/bin/../arm-none-linux-gnueabi/libc/usr/include/linux/if_tunnel.h:5,
                 from networking/libiproute/iptunnel.c:24:
/opt/EmbedSky/4.3.3/bin/../arm-none-linux-gnueabi/libc/usr/include/linux/ip.h:85: error: redefinition of 'struct iphdr'
make[1]: *** [networking/libiproute/iptunnel.o] 错误 1
make: *** [networking/libiproute] 错误 2
You will probably need to make your busybox binary
setuid root to ensure all configured applets will
work properly.
struct iphder 的重定义,

  根据该错误提示可知错误有关Network 设置,第一次暂时解决时是将配置单里所有的选项不选,

  第二次的根本解决是去掉了Network中的

  Networking Utilities --->ip tunnel

  ip tunel  的解释是

  Tunneling means encapsulating data of one protocol type within            
another protocol and sending it over a channel that understands the        
encapsulating protocol. This particular tunneling driver implements       
encapsulation of IP within IP, which sounds kind of pointless, but       
can be useful if you want to make your (or some other) machine             
appear on a different network than it physically is, or to use              

mobile-IP facilities (allowing laptops to seamlessly move between        │  
networks without changing their IP addresses).                           │  
                                                                          │  
Saying Y to this option will produce two modules ( = code which can        
be inserted in and removed from the running kernel whenever you            
want). Most people won't need this and can say N.                          
Symbol: NET_IPIP [=n]                                                      
Prompt: IP: tunneling                                                             

 Defined at net/ipv4/Kconfig:201 

  翻译大概是:

  IP隧道 
隧道是指一中的数据封装的协议类型 
另一个协议,并形成了了一个通道,它的理解为 
封装协议。 这种特殊的驱动程序实现隧道 
在IP的IP封装,这听起来无意义的一种,但 
可能是有用的,如果你想使你的(或其他)机 
出现在不同的网络上,或使用移动IP的设施(允许笔记本电脑之间的无缝移动│ 
网络不改变其IP地址)。 │ 
                                                                           │ 
说着Y来此选项会产生两个模块(=代码,可 
插在从正在运行的内核中删除每当你 
希望的)。 大多数人不需要这个,可以说No  
符号:NET_IPIP [= n]的 
提示:IP:已定义的隧道在net/ipv4/Kconfig:201       

  这大概是关于IP 通道的设置,可以对Ip 根据一定的协议进行封装,实现移动IP  设施的无缝移动,

  不过不是必须的,对于网络来说,所以此选项可不选


以上讲解的知识其中一小部分,busybox编译中出现的错误确实太多了,这是由于你的虚拟机安装系统版本的问题,如果你有什么编译busybox出现问题并解决了的,希望你能写出让大家共享。