fail to compile "rounte" function

Rob Landley rob at landley.net
Wed Nov 23 08:53:06 UTC 2005


On Wednesday 23 November 2005 01:46, stanliao at globalunichip.com wrote:
> Hi,
>
> "route" is added into busybox. However, failure exists while
> compiling this functionality.
>
> The arm-linux-gcc version 2.95.3 is used for my linux kernel and
> busybox compilation.    I let
> /usr/local/arm/2.95.3/arm-linux/include/linux    --> (symbolic link)
> ..../"linux"/include/linux
> /usr/local/arm/2.95.3/arm-linux/include/asm     -->
> .../"linux"/include/asm
> /usr/local/arm/2.95.3/arm-linux/sys-include/linux   -->
> .../"linux"/include/linux
> /usr/local/arm/2.95.3/arm-linux/sys-include/asm   -->
> .../"linux"/include/asm
>
> where "linux" is the root of linux kernel source tree.

From the attached msg, your first real problem is this bit:

/usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/wait.h:4: 
warning: `WNOHANG' redefined
/usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/waitflags.h:26: 
warning: this is the location of the previous definition

Which means that your headers are fighting each other: 
sys-include/linux/wait.h and include/bits/waitflags.h are redefining each 
other's symbols, and neither one is part of busybox.

As soon as you see a big chain of "in file included from" things like that, it 
almost guarantees that something's wrong with the standad headers.  Either 
we're #including the wrong stuff (unlikely if it builds for us, but always 
possible), your header search path is screwed up, or your headers themselves 
aren't happy.

I'm guessing #3 here.  What's your environment?  (glibc?  uclibc?  Using 
maszur's kernel headers, or some other package?  Kernel 2.6 or 2.4?  Not 
really a whole lot of information to work with here...)

Rob



More information about the busybox mailing list