Bug #76433 [Com]: Build failure with macOS libldap.dylib
Edit report at https://bugs.php.net/bug.php?id=76433&edit=1
ID: 76433
Comment by: ronyan at outlook dot com
Reported by: kevin dot abel dot 0 at gmail dot com
Summary: Build failure with macOS libldap.dylib
Status: Assigned
Type: Bug
Package: LDAP related
Operating System: macOS
PHP Version: 7.3.0alpha1
Assigned To: mcmic
Block user comment: N
Private report: N
New Comment:
Hello,
The patch macos-ldap (last revision 2018-06-11 17:57 UTC by kevin dot abel dot 0 at gmail dot com)
do not work with :
System Version: OS X 10.11.6
Kernel Version: Darwin 15.6.0
php-7.3.4.tar.gz
httpd-2.4.39.tar.gz
OpenLDAP: ldapmodify 2.4.28 (Oct 3 2015 17:40:55)
Error:
Undefined symbols for architecture x86_64:
"_ldap_create_sort_control_value", referenced from:
__php_ldap_control_from_array in ldap.o
"_ldap_create_vlv_control_value", referenced from:
__php_ldap_control_from_array in ldap.o
ld: symbol(s) not found for architecture x86_64
It's seems only solves the issue about "_ldap_create_passwordpolicy_control" and
"ldap_parse_passwordpolicy_control" symbols.
Previous Comments:
------------------------------------------------------------------------
[2019-04-25 20:34:28] ronyan at outlook dot com
The suggestion:
"LDAP_F( int )
ldap_parse_passwordpolicy_control LDAP_P((
LDAP *ld,
LDAPControl *ctrl,
ber_int_t *expirep,
ber_int_t *gracep,
LDAPPasswordPolicyError *errorp )) __OSX_AVAILABLE_BUT_DEPRECATED_MSG(__MAC_10_0,
__MAC_10_11, __IPHONE_NA, __IPHONE_NA, "use OpenDirectory Framework");
"
Do not work with
System Version: OS X 10.11.6
Kernel Version: Darwin 15.6.0
Applied in files below, but without success:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdks/MacOSX.sdk/usr/include/ldap.h
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ldap.h
/usr/include/ldap.h
/usr/local/Cellar/openldap/2.4.47/include/ldap.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/ldap.h
openLdap version:
$OpenLDAP: ldapmodify 2.4.28 (Oct 3 2015 17:40:55)
------------------------------------------------------------------------
[2018-11-01 08:06:28] heiglandreas@php.net
Might that be connected to https://bugs.php.net/bug.php?id=77005?
------------------------------------------------------------------------
[2018-07-25 08:47:51] jan dot a dot viljanen at gmail dot com
It is but currently https://bugs.php.net/bug.php?id=76403 is blocking
the project from doing just that. Can also add that if you look in the ldap.h header file macOS
provides it states
LDAP_F( int )
ldap_parse_passwordpolicy_control LDAP_P((
LDAP *ld,
LDAPControl *ctrl,
ber_int_t *expirep,
ber_int_t *gracep,
LDAPPasswordPolicyError *errorp )) __OSX_AVAILABLE_BUT_DEPRECATED_MSG(__MAC_10_0,
__MAC_10_11, __IPHONE_NA, __IPHONE_NA, "use OpenDirectory Framework");
so it looks like they are trying to get people to not use openldap.
------------------------------------------------------------------------
[2018-07-24 11:06:05] php dot mac75 at yahoo dot com
Sorry to intervene but is using openldap from homebrew an option/alternative ?
------------------------------------------------------------------------
[2018-06-11 18:01:31] kevin dot abel dot 0 at gmail dot com
libldap on macOS is a fork of OpenLDAP, claiming to be 2.4.28, although there are clearly some
pieces of the API that have been taken out or disabled. I added a patch to the bug that just adds
some configure checks to these functions and add guards around them in the source. It may not be the
best solution, but I was at least able to fully compile with it.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=76433
--
Edit this bug report at https://bugs.php.net/bug.php?id=76433&edit=1
Thread (10 messages)