> > The warning, converted to an error due to -Werror, means that the macro > calls the function __sysconf, and that function is not declared. > > Your test case works fine on my Ubuntu Lucid system. To figure out what > is happening on your system, you need to look at the definition of NBPG. > I don't know why it is calling __sysconf rather than sysconf. sysconf > is declared in <unistd.h>. I don't know where __sysconf is declared. > You could try simply grepping in /usr/include. > Thanks for the reply. It helps. I think this is a bug in libc6-dev then (which provides /usr/include/sys/user.h) . In libc6-dev 2.13-4, I have debian_chroot:sid:kusumanchi:/home# grep "define NBPG" /usr/include/sys/user.h #define NBPG PAGE_SIZE debian_chroot:sid:kusumanchi:/home# grep "define PAGE_SIZE" /usr/include/sys/user.h #define PAGE_SIZE (__sysconf(_SC_PAGESIZE)) where as in libc6-dev 2.11.2-10, I have $grep "define NBPG" /usr/include/sys/user.h #define NBPG PAGE_SIZE $grep "define PAGE_SIZE" /usr/include/sys/user.h #define PAGE_SIZE (sysconf(_SC_PAGESIZE)) The testcase I gave works in libc6-dev 2.11.2-10, gcc 4:4.4.5-1 and fails in libc6-dev 2.13-4, gcc 4:4.6.0-5. raju -- Kamaraju S Kusumanchi http://malayamaarutham.blogspot.com/