Hi, On Fri, 11 Apr 2008, Stephan Kulow wrote:
glibc 2.8 no longer defines ARG_MAX constant in linux, so you may see:
foobar.c:N: error: 'ARG_MAX' undeclared (first use in this function)
Note, that the code should have done that before too, as the glibc info pages say:
Each of the following limit parameters has a macro that is defined in `limits.h' only if the system has a fixed, uniform limit for the parameter in question. If the system allows different file systems or files to have different limits, then the macro is undefined; use `sysconf' to find out the limit that applies at a particular time on a particular machine.
Sometimes it's also that an include of <limits.h> is just missing (e.g. for PATH_MAX). Older glibc could possibly include limits.h indirectly with other headers, so nobody noticed it missing, now you do. There's also one other problem which happened from time to time: "struct ucred" (from <sys/socket.h> (really <bits/socket.h>)) is a GNU extension, and therefore has to be guarded by -D_GNU_SOURCE. In older glibcs this accidentally wasn't the case and some programs came to rely on this. For those programs/files you need to define _GNU_SOURCE before the inclusion of the first header (or in CFLAGS). Ciao, Michael. --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org