expected identifier before numeric constant

Hi all,

While trying to compile a piece of code(Samba) I get this error..

In file included from dsdb/samdb/ldb_modules/samba3sam.c:11:
./lib/ldb/modules/ldb_map.h:62: error: expected identifier before numeric constant
dsdb/samdb/ldb_modules/samba3sam.c:322: error: 'MAP_GENERATE' undeclared here (not in a function)
dsdb/samdb/ldb_modules/samba3sam.c:396: error: 'MAP_CONVERT' undeclared here (not in a function)
The following command failed:
gcc  -Ilib/replace -Ilib/talloc -fvisibility=hidden  -Wall -g -O2 -I./include -I. -I./lib -I./lib/replace -D_SAMBA_BUILD_=4 -DHAVE_CONFIG_H  -fPIC -c dsdb/samdb/ldb_modules/samba3sam.c -o dsdb/samdb/ldb_modules/samba3sam.o
make[1]: *** [dsdb/samdb/ldb_modules/samba3sam.o] Error 1

This is the first time I'm seeing an issue like this..
please take a look at it..

Thanks

As a general comment - this kind of problem usually arises because .h (include files)
code uses "guard" define statments so that just the correct statements are actually included by cpp. So, I would guess that one of those define statements is at fault.

The configure utility usually sets these values correctly for you.

And there really is no way for us to "look" at it since the build is particular to your system.