[BusyBox] Weird compilation errors with route

Umar Qureshey Umar at audioramp.com
Mon Jun 24 11:54:03 UTC 2002


Hi,
  I am getting mad compilation errors when I enable route in my busybox.
Disabling that command makes everything ok but I reaally need route for
networking.  Here's the make error log:

*****************************
arm-linux-gcc -pipe -Wall -Wshadow -Os -fstrict-aliasing
-fomit-frame-pointer -D_GNU_SOURCE  -DBB_VER='"0.60.3"'
-DBB_BT='"2002.06.22-10:27+0000"' -DUSE_SYSTEM_PWD_GRP  -I.  -c route.c -o
route.o
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/sc
hed.h:77,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:14,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:108: warning: `FD_SET' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/sys/select.h
:83: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:109: warning: `FD_CLR' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/sys/select.h
:84: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:110: warning: `FD_ISSET' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/sys/select.h
:85: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:111: warning: `FD_ZERO' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/sys/select.h
:86: warning: this is the location of the previous definition
In file included from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:34: warning: #warning This file is not supposed to be used outside of
kernel.
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/stdlib.h:42,
                 from route.c:32:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/waitfla
gs.h:26: warning: `WNOHANG' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/wa
it.h:4: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/waitfla
gs.h:27: warning: `WUNTRACED' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/wa
it.h:5: warning: this is the location of the previous definition
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/netdb.h:38,
                 from libbb/libbb.h:28,
                 from busybox.h:102,
                 from route.c:37:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:299: warning: `SIGEV_SIGNAL' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sigi
nfo.h:192: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:301: warning: `SIGEV_NONE' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sigi
nfo.h:193: warning: this is the location of the previous definition
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:303: warning: `SIGEV_THREAD' redefined
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sigi
nfo.h:194: warning: this is the location of the previous definition
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:27,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:30: parse error before `atomic_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:30: warning: no semicolon at end of struct or union
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:67: parse error before `}'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:77: parse error before `__u32'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:85: parse error before `atomic_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:85: warning: no semicolon at end of struct or union
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:86: warning: data definition has no type or storage class
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/dst.
h:87: parse error before `}'
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/sc
hed.h:18,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:14,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:17: parse error before `wait_queue_head_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:17: warning: no semicolon at end of struct or union
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h: In function `sema_init':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:46: warning: implicit declaration of function `atomic_set'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:46: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:47: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:48: warning: implicit declaration of function `init_waitqueue_head'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:48: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h: At top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:149: parse error before `wait_queue_head_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:149: warning: no semicolon at end of struct or union
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:150: warning: data definition has no type or storage class
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h: In function `init_rwsem':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:178: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:179: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:180: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:181: dereferencing pointer to incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sema
phore.h:182: dereferencing pointer to incomplete type
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/si
gnal.h:4,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/sc
hed.h:26,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:14,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sign
al.h: At top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sign
al.h:27: conflicting types for `sigset_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/sys/select.h
:38: previous declaration of `sigset_t'
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/sc
hed.h:77,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:14,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:9: redefinition of `struct timespec'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
me.h:88: redefinition of `struct timeval'
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/sc
hed.h:80,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:14,
                 from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
mer.h:21: field `list' has incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
mer.h:45: warning: declaration of `expires' shadows global declaration
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
mer.h: In function `timer_pending':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/linux/ti
mer.h:57: warning: control reaches end of non-void function
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:28,
                 from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h: In function `inet_putpeer':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:43: warning: implicit declaration of function `local_bh_disable'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:44: warning: implicit declaration of function `atomic_dec_and_test'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:49: `jiffies' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:49: (Each undeclared identifier is reported only once
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:49: for each function it appears in.)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/inet
peer.h:51: warning: implicit declaration of function `local_bh_enable'
In file included from route.c:25:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: At top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:60: field `dst' has incomplete type
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:99: parse error before `old_gw'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:104: parse error before `u32'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:105: warning: `struct iphdr' declared inside parameter list
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:105: warning: its scope is only this definition or declaration, which is
probably not what you want.
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:109: parse error before `addr'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:112: parse error before `*'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:113: warning: `struct netlink_callback' declared inside parameter list
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:117: parse error before `u32'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: In function `ip_route_output':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:119: `daddr' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:119: `saddr' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:119: `oif' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:119: `tos' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:121: `rp' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: In function `ip_rt_put':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:128: warning: implicit declaration of function `dst_release'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: At top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:140: parse error before `tos'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: In function `rt_tos2priority':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:142: warning: implicit declaration of function `IPTOS_TOS'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:142: `tos' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: At top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:145: parse error before `u32'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h: In function `ip_route_connect':
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:148: `rp' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:148: `dst' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:148: `src' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:148: `tos' undeclared (first use in this function)
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/net/rout
e.h:148: `oif' undeclared (first use in this function)
In file included from route.c:32:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/stdlib.h: At
top level:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/stdlib.h:486
: parse error before `;'
In file included from route.c:33:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/string.h:55:
parse error before `{'
In file included from
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/netdb.h:38,
                 from libbb/libbb.h:28,
                 from busybox.h:102,
                 from route.c:37:
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:34: redefinition of `union sigval'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:37: warning: redefinition of `sigval_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sigi
nfo.h:11: warning: `sigval_t' previously declared here
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:274: redefinition of `struct sigevent'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:289: warning: redefinition of `sigevent_t'
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/sys-include/asm/sigi
nfo.h:211: warning: `sigevent_t' previously declared here
/usr/lib/gcc-lib/arm-linux/2.95.3/../../../../arm-linux/include/bits/siginfo
.h:298: parse error before `0'
In file included from busybox.h:102,
                 from route.c:37:
libbb/libbb.h:93: warning: declaration of `flags' shadows global declaration
libbb/libbb.h:94: warning: declaration of `flags' shadows global declaration
libbb/libbb.h:116: warning: declaration of `flags' shadows global
declaration
libbb/libbb.h:172: warning: declaration of `flags' shadows global
declaration
libbb/libbb.h:180: redefinition of `struct sysinfo'
libbb/libbb.h:196: warning: declaration of `info' shadows global declaration
libbb/libbb.h:260: warning: declaration of `flags' shadows global
declaration
route.c: In function `displayroutes':
route.c:371: warning: declaration of `flags' shadows global declaration
make: *** [route.o] Error 1
***********************************


Seems like a dependency problem.

In the Config file I have the following commands enabled: [, ash, cat,
chmod, clar, cp, cut. date. df, echo, ifconfig, init, kill, linuxrc, ls,
mkdir, more, mount, ping, ps, rm, sh, touch, umount, test, and of course,
route (which doesn't compile).  I am cross developing for arm on x86 and
have had no problems with my tools so far.

Any suggestions welcome.

Regards,

Umar



More information about the busybox mailing list