[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: build problems on Solaris. openldap-2.3.34



Sean O'Malley wrote:
I am having a few issues getting openldap-2.3.34 to build in solaris 10
x86.

The first issues is the order of the include files basically anywhere
<avl.h> is included it is picking up /usr/include/sys/avl.h instead of the
openldap avl.h library. You can pretty much just grep for <avl.h> or
"avl.h" and find all the places it conflicts.

This has been reported before in the ITS. I haven't seen this problem, but I've only been building on Solaris 10 for Sparc. Strange that such a thing would be architecture-specific. Also, unless something is broken in your compiler, the order of include-flag processing should mean that OpenLDAP's avl.h is located first.


The real trick here is I think it is netdb.h requires sys/avl.h

second in portable.h
/* Define to `int' if <sys/socket.h> does not define. */
#define socklen_t int

This should be commented out it is defined as:
typedef size_t          socklen_t;
typedef uint32_t        socklen_t;
in <sys/socket.h>

Third. and I didnt document all the places
but #include <netdb.h> isnt being included..
libraries/libldap/os-local.c
libraries/libldap/util-int.c
libraries/libldap_r/os-local.c
libraries/libldap/os-ip.c

<netdb.h> should not be included in any source files at all since it's part of <ac/socket.h>.

Fourth:

/opt/dloads/openldap-2.3.34/servers/slapd/slap.h
needs to include
#include <sys/socket.h>

No, it already includes <ac/socket.h>.

--
  -- Howard Chu
  Chief Architect, Symas Corp.  http://www.symas.com
  Director, Highland Sun        http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP     http://www.openldap.org/project/