#24025 [Opn->Csd]: Can't build with shared ldap support
| From: | sniper@php.net | Date: | Tue, 01 Jul 2003 00:02:49 +0000 |
| Subject: | #24025 [Opn->Csd]: Can't build with shared ldap support | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-42945@lists.php.net to get a copy of this message | ||
ID: 24025
Updated by: sniper@php.net
Reported By: andreas at conectiva dot com dot br
-Status: Open
+Status: Closed
Bug Type: Compile Failure
Operating System: linux
PHP Version: 4CVS-2003-06-04 (stable)
New Comment:
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2003-06-04 14:49:03] andreas at conectiva dot com dot br
The configure test for ldap_start_tls_s and other ldap functions fails
to pass along needed ldap libraries:
(...)
configure:41587: checking for ldap_parse_reference
configure:41615: gcc -o conftest -O2 -march=i386 -mcpu=pentiumpro -fPIC
-L/usr/lib -ldb-4.1 -L/usr/lib/krb5 conftest.c -lcrypt -lpam
-lgmp -lfreetype -lpng -lz -ljpeg -lz -ldb-4.1 -lgdbm -lcurl -lbz2 -lz
-lssl -lcrypto -lresolv -lm -ldl -lnsl -lcurl -lz -lssl -lcr
ypto -ldl -lz -lxml2 -lz -lm 1>&5
(...)
configure:41587: checking for ldap_start_tls_s
configure:41615: gcc -o conftest -O2 -march=i386 -mcpu=pentiumpro -fPIC
-L/usr/lib -ldb-4.1 -L/usr/lib/krb5 conftest.c -lcrypt -lpam
-lgmp -lfreetype -lpng -lz -ljpeg -lz -ldb-4.1 -lgdbm -lcurl -lbz2 -lz
-lssl -lcrypto -lresolv -lm -ldl -lnsl -lcurl -lz -lssl -lcr
ypto -ldl -lz -lxml2 -lz -lm 1>&5
(...)
The patch below, against ext/ldap/config.m4, worksaround this problem.
Worked here, but may not be the right way to fix this:
--- php4-STABLE-200306041730/ext/ldap/config.m4.orig 2003-06-04
16:25:11.000000000 -0300
+++ php4-STABLE-200306041730/ext/ldap/config.m4 2003-06-04
16:30:21.000000000 -0300
@@ -110,7 +110,9 @@
dnl Check for 3 arg ldap_set_rebind_proc
_SAVE_CPPFLAGS=$CPPFLAGS
+ _SAVE_LDFLAGS=$LDFLAGS
CPPFLAGS="$CPPFLAGS -I$LDAP_INCDIR"
+ LDFLAGS="$LDFLAGS -L$LDAP_LIBDIR $LDAP_SHARED_LIBADD"
AC_CACHE_CHECK([for 3 arg ldap_set_rebind_proc],
ac_cv_3arg_setrebindproc,
[AC_TRY_COMPILE([#include <ldap.h>], [ldap_set_rebind_proc(0,0,0)],
ac_cv_3arg_setrebindproc=yes, ac_cv_3arg_setrebindproc=no)])
@@ -118,8 +120,15 @@
AC_DEFINE(HAVE_3ARG_SETREBINDPROC,1,[Whether 3 arg
set_rebind_proc()])
fi
CPPFLAGS=$_SAVE_CPPFLAGS
+ LDFLAGS=$_SAVE_LDFLAGS
dnl Solaris 2.8 claims to be 2004 API, but doesn't have
dnl ldap_parse_reference() nor ldap_start_tls_s()
+ _SAVE_CPPFLAGS=$CPPFLAGS
+ _SAVE_LDFLAGS=$LDFLAGS
+ CPPFLAGS="$CPPFLAGS -I$LDAP_INCDIR"
+ LDFLAGS="$LDFLAGS -L$LDAP_LIBDIR $LDAP_SHARED_LIBADD"
AC_CHECK_FUNCS([ldap_parse_reference ldap_start_tls_s])
+ CPPFLAGS=$_SAVE_CPPFLAGS
+ LDFLAGS=$_SAVE_LDFLAGS
fi
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24025&edit=1