Hi, I loaded a fresh hardware with SuSE 7.3 and find myself unable to compile MySQL database any more. What happens?
I unpack mysql-3.23.47 and do ./configure which stops at some point: checking for inline... inline checking for off_t... yes checking for st_rdev in struct stat... yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking size of char... 1 checking size of int... 4 checking size of long... 4 checking size of long long... 8 checking size of off_t... 0 configure: error: MySQL needs a off_t type. The same thing happens when using or not using some options and/or compiler flags with ./configure. The log file says: In file included from configure:6797: /usr/include/stdlib.h: In function `atoi': /usr/include/stdlib.h:362: `__constnptr' undeclared (first use in this function) /usr/include/stdlib.h:362: (Each undeclared identifier is reported only once /usr/include/stdlib.h:362: for each function it appears in.) /usr/include/stdlib.h: In function `atol': /usr/include/stdlib.h:367: `strtoconstnptr' undeclared (first use in this functi /usr/include/stdlib.h:367: parse error before `)' /usr/include/stdlib.h: In function `atoll': /usr/include/stdlib.h:374: `strtocconstnptr' undeclared (first use in this funct /usr/include/stdlib.h:374: parse error before `)' configure: failed program was: #line 6793 "configure" #include "confdefs.h" #include <stdio.h> #include <sys/types.h> #if STDC_HEADERS #include <stdlib.h> #include <stddef.h> #endif main() { FILE *f=fopen("conftestval", "w"); if (!f) exit(1); fprintf(f, "%d\n", sizeof(off_t)); exit(0); } Obviously it fails in a common system include file, namely stdlib.h, at this point: /* * ISO C99 Standard: 7.20 General utilities <stdlib.h> */ #ifndef _STDLIB_H #include <features.h> <snip> /* Convert a string to a floating-point number. */ extern double atof (__const char *__nptr) __THROW __attribute_pure__; /* Convert a string to an integer. */ extern int atoi (__const char *__nptr) __THROW __attribute_pure__; /* Convert a string to a long integer. */ extern long int atol (__const char *__nptr) __THROW __attribute_pure__; <snip> #ifdef __USE_EXTERN_INLINES /* Define inline functions which call the internal entry points. */ <snip> extern __inline double atof (__const char *__nptr) __THROW { return strtod (__nptr, (char **) NULL); } extern __inline int atoi (__const char *__nptr) __THROW { return (int) l (__constnptr, (char **) NULL, 10); } extern __inline long int atol (__const char *__nptr) __THROW { return strtoconstnptr, (char **) NULL, 10); } <snip> #endif /* Optimizing and Inlining. */ Compile option __USE_EXTERN_INLINES may be set from features.h at this point (grep finds no other file *.h where it is defined): features.h: /* Decide whether we can define 'extern inline' functions in headers. */ #if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \ && !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__ # define __USE_EXTERN_INLINES 1 #endif What goes wrong here? Am I missing some prerequisite include file? Or can I turn off 'extern inline' in some way? I do not know if my installation is broken or I don't get the options right. TIA for any help. Thomas Spahni --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php