Having a problem with openldap-2.4.11 for use with Samba-3.2.4 and am looking for help fixing the issue.
system info:
uname -m = sun4u
uname -r = 5.9
uname -s = SunOS
uname -v = Generic_118558-25
#building openldap CC=gcc #echo $CC #exit CPPFLAGS="-I/usr/local/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/include/sasl" LDFLAGS="-L/usr/local/lib -L/usr/local/ssl/lib -L/usr/local/BerkeleyDB.4.2/lib" export CC CPPFLAGS LDFLAGS # CFLAGS='-D_AVL_H' export CFLAGS #
./configure --enable-bdb
make depend make install #end building openldap
#build samba make clean ./configure --with-ldap --with-acl-support --with-ads --with-pam --with-winbind --with-krb5=/usr/local
#####make #####make install #end build samba
The configure script fails with the following:
checking for LDAP support... yes checking ldap.h usability... yes checking ldap.h presence... yes checking for ldap.h... yes checking lber.h usability... yes checking lber.h presence... yes checking for lber.h... yes checking for ber_tag_t... yes checking for ber_scanf in -llber... yes checking for ber_sockbuf_add_io... yes checking for LDAP_OPT_SOCKBUF... yes checking for LBER_OPT_LOG_PRINT_FN... yes checking for ldap_init in -lldap... yes checking for ldap_set_rebind_proc... yes checking whether ldap_set_rebind_proc takes 3 arguments... 3 checking for ldap_initialize... no checking whether LDAP support is used... yes checking for Active Directory and krb5 support... yes checking for ldap_initialize... (cached) no configure: error: Active Directory support requires ldap_initialize
On Wednesday 01 October 2008 22:24:58 Wayne Rasmussen wrote:
Having a problem with openldap-2.4.11 for use with Samba-3.2.4 and am looking for help fixing the issue.
system info:
uname -m = sun4u
uname -r = 5.9
uname -s = SunOS
uname -v = Generic_118558-25
I have:
[bgmilne@blade ~]$ uname -mrsv SunOS 5.10 Generic sun4u
#building openldap CC=gcc #echo $CC #exit CPPFLAGS="-I/usr/local/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/include/sasl" LDFLAGS="-L/usr/local/lib -L/usr/local/ssl/lib -L/usr/local/BerkeleyDB.4.2/lib" export CC CPPFLAGS LDFLAGS # CFLAGS='-D_AVL_H' export CFLAGS #
./configure --enable-bdb
Since you didn't provide --includedir or --libdir, the headers would be installed to a default location, and pre-existing headers would not be overwritten ...
make depend make install #end building openldap
#build samba make clean ./configure --with-ldap --with-acl-support --with-ads --with-pam --with-winbind --with-krb5=/usr/local
#####make #####make install #end build samba
The configure script fails with the following:
checking for LDAP support... yes checking ldap.h usability... yes checking ldap.h presence... yes checking for ldap.h... yes checking lber.h usability... yes checking lber.h presence... yes checking for lber.h... yes checking for ber_tag_t... yes checking for ber_scanf in -llber... yes checking for ber_sockbuf_add_io... yes checking for LDAP_OPT_SOCKBUF... yes checking for LBER_OPT_LOG_PRINT_FN... yes checking for ldap_init in -lldap... yes checking for ldap_set_rebind_proc... yes checking whether ldap_set_rebind_proc takes 3 arguments... 3 checking for ldap_initialize... no checking whether LDAP support is used... yes checking for Active Directory and krb5 support... yes checking for ldap_initialize... (cached) no configure: error: Active Directory support requires ldap_initialize
[bgmilne@blade ~]$ grep Copyright /usr/include/ldap.h /usr/include/lber.h /usr/include/ldap.h: * Copyright 2001-2003 Sun Microsystems, Inc. All rights reserved. /usr/include/ldap.h: * Copyright (C) 1998-1999 Netscape Communications Corporation. All /usr/include/lber.h: * Copyright (c) 2001 by Sun Microsystems, Inc. /usr/include/lber.h: * Copyright(C) 1998 Netscape Communications Corporation. All Rights [bgmilne@blade ~]$ grep "ldap_init(" /usr/include/ldap.h LDAP_API(LDAP *) LDAP_CALL ldap_init(const char *defhost, int defport); * Use this after ldap_init() or just use ldapssl_init() instead. [bgmilne@blade ~]$ grep ldap_initialize /usr/include/ldap.h [bgmilne@blade ~]$
On: [bgmilne@tiger ~]$ rpm -q --whatprovides openldap-devel lib64ldap2.4_2-devel-2.4.11-3mdv2009.0
I get: [bgmilne@tiger ~]$ grep Copyright /usr/include/ldap.h * Copyright 1998-2008 The OpenLDAP Foundation. /* Portions Copyright (c) 1990 Regents of the University of Michigan. [bgmilne@tiger ~]$ grep "ldap_initialize.*(" /usr/include/ldap.h ldap_initialize LDAP_P((
So, I think check that you have got the headers you thought you installed, and either remove the ones in the default include path, or override relevant compiler options to ensure you get the right headers (and libraries) first.
(I did actually build samba 3.2.3 against OpenLDAP 2.4.11 yesterday (and 3.2.4 and today), and the resulting binaries joined an AD test domain just fine yesterday ...)
Regards, Buchan
openldap-technical@openldap.org