[links-list] how 2 compile on freebsd-4.3, was Re: [ANNOUNCE] elinks-0.4pre6

clemensF ino-waiting at gmx.net
Wed May 1 04:47:11 PDT 2002


> Petr Baudis:

>   If this ELinks will crash to you, *PLEASE* let me know, with backtrace and
> descrpition of the thing you did when it crashed, if possible (if you can
> reproduce it, even better!).

it doesn't compile on freebsd-4.3 any more.  the errors seem to indicate
this beeing an error in the order header files are included:

gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I./..    -O -pipe -L/usr/local/ssl/lib
-I/usr/local/ssl/include -Wall -I/usr/local/include -I/usr/X11R6/include -c options.c
In file included from options.c:11:
/usr/include/sys/socket.h:52: syntax error before `sa_family_t'
/usr/include/sys/socket.h:52: warning: data definition has no type or
storage class
/usr/include/sys/socket.h:163: syntax error before `u_char'
/usr/include/sys/socket.h:174: syntax error before `u_short'
/usr/include/sys/socket.h:188: syntax error before `u_char'
/usr/include/sys/socket.h:190: `int64_t' undeclared here (not in a function)
/usr/include/sys/socket.h:190: `u_char' undeclared here (not in a function)
/usr/include/sys/socket.h:190: size of array `__ss_pad1' is too large
/usr/include/sys/socket.h:191: syntax error before `int64_t'
/usr/include/sys/socket.h:192: `u_char' undeclared here (not in a function)
/usr/include/sys/socket.h:192: `int64_t' undeclared here (not in a function)
/usr/include/sys/socket.h:192: `u_char' undeclared here (not in a function)
/usr/include/sys/socket.h:192: `int64_t' undeclared here (not in a function)
/usr/include/sys/socket.h:359: syntax error before `pid_t'
/usr/include/sys/socket.h:364: syntax error before `gid_t'
/usr/include/sys/socket.h:395: syntax error before `u_short'
/usr/include/sys/socket.h:403: syntax error before `caddr_t'
/usr/include/sys/socket.h:407: syntax error before `caddr_t'
/usr/include/sys/socket.h:440: syntax error before `recv'
/usr/include/sys/socket.h:440: warning: data definition has no type or
storage class

the fix is easy:  define types before they are used:

-------------------- 8< -----------------------
// -ino: 3-01.05.02-13:38
// #include <netdb.h>
// #include <stdio.h>
// #include <string.h>
// #include <sys/socket.h>
// #include <sys/stat.h>
// #include <sys/types.h>

#include <sys/types.h>
#include <sys/socket.h>
#include <sys/stat.h>

/* We need to have it here. Stupid BSD. */
#include <netinet/in.h>
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif

// -ino:
#include <netdb.h>
#include <stdio.h>
#include <string.h>
-------------------- 8< -----------------------

also, there's no "./configure".  i ran "autogen.sh" to get one, but i can't
be sure it is the right one.  this is what i did:

 1554  pd elinks
 1555  cvs log -h ChangeLog       ;# to find out about the realese to get
 1556  cvs update -r REL_0_4pre6  ;# coincides with the announcement :)
 1557  m INSTALL                  ;# doesn't help when ./configure is missing
 1560  ./autogen.sh
 1561  ./configure
 1562  gmake

-- 
clemens fischer
-- 
Unsubscribe: send email to links-list-request at linuxfromscratch.org
and put unsubscribe in the subject header of the message



More information about the links-list mailing list