connectsock.c struct hostent has no member named h_addr compile error

March 1, 2013

Recently I was trying to compile connectsock.c from Internetworking With TCP/IP Volume III: Client-Server Programming and Applications, Linux/POSIX Socket Version (with D. Stevens), 2000. 0-13-032071-4

Compile Error

connectsock.c: In function connectsock:
connectsock.c:52:28: error: struct hostent has no member named h_addr

Solution? Modify the Make file!

Before:

DEFS =
CFLAGS = -W -pedantic -ansi -g ${DEFS} ${INCLUDE}

After:

DEFS =
CFLAGS =-W-pedantic-ansi-g $ {DEFS} $ {INCLUDE}-D_GNU_SOURCE