On Tue, 28 Apr 1998, Pollywog wrote:
> gcc -c -O -I. smtp_in.c
> smtp_in.c: In function `smtp_setup_msg':
> smtp_in.c:833: sizeof applied to an incomplete type
> smtp_in.c:874: dereferencing pointer to incomplete type
> smtp_in.c:904: dereferencing pointer to incomplete type
> make[1]: *** [smtp_in.o] Error 1
> make[1]: Leaving directory `/usr/local/etc/exim/build-Linux-libc5-i386'
> make: *** [go] Error 2
I don't quite know how all the Makefiles and build scripts are set-up, but
just taking a quick look at the relavent bits of code that failed.
832 #if (!defined __GLIBC__) || (__GLIBC__ < 2)
833 int optlen = sizeof(struct ip_options) + MAX_IPOPTLEN;
834 struct ip_options *ipopt = store_malloc(optlen);
835 #else
836 struct ip_opts ipoptblock;
837 struct ip_opts *ipopt = &ipoptblock;
838 int optlen = sizeof(ipoptblock);
839 #endif
The others places are similar in that they have the same
#if
It looks like you "should" according to the assumtions of the code, have
__GLIBC__ defined (probably to 5), but don't. This is info that should
be coming from your C compiler. Unless your Linux system is truly
ancient, I find it hard to imagine that you are using something that
isn't GLIBC 4, 5, or 6.
I know that none of this is of any immediate help, but maybe what
I say will help someone else on the list come up with a more useful
comment (including telling me that I am completely wrong, if I am).
-j
--
Jeffrey Goldberg +44 (0)1234 750 111 x 2826
Cranfield Computer Centre FAX 751 814
J.Goldberg@??? http://WWW.Cranfield.ac.uk/public/cc/cc047/
Relativism is the triumph of authority over truth, convention over justice.
--
*** Exim information can be found at
http://www.exim.org/ ***