> I have AIX 5.3 with 5.3.0.50 updates and I'm compiling with gcc 4.0.2. > One interesting note is I created the gcc when my system was at > 5.3.0.10. The upgrade may have affected it. > > After ./configure, I type make and get the following error (trimmed > down): > > In file included from ./stdint.h:55, > from ///usr/include/inttypes.h:51, > from ./inttypes.h:24, > from xstrtol.h:25, > from xstrtoimax.c:23: > /usr/local/lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.2/include/sys/types.h: 174: > error: syntax error > before 'daddr_t'
I ran into exactly the same problem coreutils 6.3 on AIX 5.2 with GCC 4.1.0. My patch is at the end of the message. It's probably not acceptable as such, but I don't have the time to try to understand the philosophy behind all this "let's replace system headers with our own funky versions" stuff. One thing that bothered me with trying to write the patch is that there seems to be no way to fix this without fear of breaking it on other platforms. If there was some layer for explicitly supported platforms (like "lib/aix.h" for AIX), things like this could probably be handled there without having to worry about other platforms. I know it's not the "autoconf way", but I've seen very good results with a hybrid "autoconf + explicit platform support" approach. And here's the patch: diff -r -wibu coreutils-6.3/lib/stdint_.h coreutils-6.3-patched/lib/stdint_.h --- coreutils-6.3/lib/stdint_.h 2006-08-28 23:51:12.000000000 +0300 +++ coreutils-6.3-patched/lib/stdint_.h 2006-10-21 08:41:16.000000000 +0300 @@ -51,9 +51,11 @@ MacOS X 10.4.6 <sys/types.h> includes <stdint.h> (which is us), but relies on the system <stdint.h> definitions, so include <sys/types.h> after @[EMAIL PROTECTED] */ +#ifndef _AIX #if @HAVE_SYS_TYPES_H@ # include <sys/types.h> #endif +#endif /* Get LONG_MIN, LONG_MAX, ULONG_MAX. */ #include <limits.h> -- http://www.iki.fi/vl/ _______________________________________________ Bug-coreutils mailing list Bug-coreutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-coreutils