This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: eCos build fails when INET support is disabled
- From: "Gary D. Thomas" <gary dot thomas at mind dot be>
- To: Chris Garry <cgarry at sweeneydesign dot co dot uk>
- Cc: eCos Discussion <ecos-discuss at sources dot redhat dot com>
- Date: 07 Mar 2003 04:38:34 -0700
- Subject: Re: [ECOS] eCos build fails when INET support is disabled
- References: <009301c2e49d$8764e510$5b0ba8c0@jasper>
On Fri, 2003-03-07 at 04:34, Chris Garry wrote:
> eCos updated from CVS today.
> Hardware: E7T
> Template: net
> 'Samsung KS32C5000 ethernet driver package' added
> 'INET support' disabled in FreeBSD networking stack
> 'INET support' disabled in Basic networking framework
>
> The build fails with:
>
> arm-elf-gcc -c -I/ecos-e/CygwinHome/ecos-build/ecos-net2_install/include -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpi
> p/current -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src -I/ecos-e/CygwinHome/repository/ecos/packages/net/
> bsd_tcpip/current/tests -I. -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/ -mcpu=arm7tdmi -mno-sho
> rt-load-words -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sect
> ions -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -D_KERNEL -Wp,-MD,src/sys/net/if.tmp -o src/sys/net/net_bsd_tcpip_if.o
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if.c
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if.c: In function `_sa':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if.c:147: warning: implicit declaration of function
> `inet_ntoa'
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if.c:147: dereferencing pointer to incomplete type
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if.c:147: warning: return makes pointer from integer
> without a cast
> make[1]: *** [src/sys/net/if.o.d] Error 1
> make[1]: Leaving directory `/ecos-e/CygwinHome/ecos-build/ecos-net2_build/net/bsd_tcpip/current'
> make: *** [build] Error 2
> make: Leaving directory `/ecos-e/CygwinHome/ecos-build/ecos-net2_build'
>
> So I tried a simple fix:
>
> diff -u -5 -b -p -r1.2 if.c
> --- net/bsd_tcpip/current/src/sys/net/if.c 4 Nov 2002 20:23:25 -00001.2
> +++ net/bsd_tcpip/current/src/sys/net/if.c 7 Mar 2003 11:25:27 -0000
> @@ -141,12 +141,14 @@ _sa(struct ifaddr *ifa)
> {
> struct sockaddr *sa = ifa->ifa_addr;
> static char _unknown[128];
>
> switch (sa->sa_family) {
> +#ifdef INET
> case AF_INET:
> return inet_ntoa((struct in_addr)((struct sockaddr_in *)(ifa->ifa_addr)
> )->sin_addr);
> +#endif
> #ifdef INET6
> case AF_INET6:
> diag_sprintf(_unknown, "%s/%d", ip6_sprintf(IFA_IN6(ifa)),
> in6_mask2len(&((struct in6_ifaddr *)ifa)->ia_prefixmask.si
> n6_addr, NULL));
> return _unknown;
>
> But then the build fails with:
>
> arm-elf-gcc -c -I/ecos-e/CygwinHome/ecos-build/ecos-net3_install/include -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpi
> p/current -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src -I/ecos-e/CygwinHome/repository/ecos/packages/net/
> bsd_tcpip/current/tests -I. -I/ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/ -mcpu=arm7tdmi -mno-sho
> rt-load-words -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sect
> ions -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -D_KERNEL -Wp,-MD,src/sys/net/if_ethersubr.tmp -o
> src/sys/net/net_bsd_tcpip_if_ethersubr.o
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c: In function `cyg_ether_output':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:326: dereferencing pointer to
> incomplete type
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:151: warning: unused variable `off'
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c: In function `cyg_ether_demux':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:536: dereferencing pointer to
> incomplete type
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c: In function `cyg_ether_ifattach':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:739: dereferencing pointer to
> incomplete type
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c: In function `cyg_ether_ioctl':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:848: dereferencing pointer to
> incomplete type
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c: In function `ether_resolvemulti':
> /ecos-e/CygwinHome/repository/ecos/packages/net/bsd_tcpip/current/src/sys/net/if_ethersubr.c:874: warning: unused variable `sin'
> make[1]: *** [src/sys/net/if_ethersubr.o.d] Error 1
> make[1]: Leaving directory `/ecos-e/CygwinHome/ecos-build/ecos-net3_build/net/bsd_tcpip/current'
> make: *** [build] Error 2
> make: Leaving directory `/ecos-e/CygwinHome/ecos-build/ecos-net3_build'
>
> Should it be possible to build eCos with INET disabled?
Possibly not, we've never tried it ;-)
Why would you want to [in this day and age]?
--
.--------------------------------------------------------.
| Mind: Embedded Linux and eCos Development |
|--------------------------------------------------------|
| Gary Thomas email: gary dot thomas at mind dot be |
| Mind ( http://mind.be ) tel: +1 (970) 229-1963 |
| gpg: http://www.chez-thomas.org/gary/gpg_key.asc |
'--------------------------------------------------------'
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss