使用ldap编译php

使用ldap编译php,php,ldap,linux-mint,Php,Ldap,Linux Mint,我在LinuxMint上-我不能用LDAP支持编译php 他说: checking for LDAP Cyrus SASL support... yes configure: error: Cannot find ldap libraries in /usr/lib. 但似乎安装了every-dev libs: dpkg -l *ldap* | grep ii ii ldap-utils 2.4.28-1.1ubuntu

我在LinuxMint上-我不能用LDAP支持编译php

他说:

checking for LDAP Cyrus SASL support... yes
configure: error: Cannot find ldap libraries in /usr/lib.
但似乎安装了every-dev libs:

 dpkg -l *ldap* | grep ii
ii  ldap-utils                                    2.4.28-1.1ubuntu4.1                        OpenLDAP utilities
ii  ldaptor-utils                                 0.0.43+debian1-6ubuntu1                    command-line LDAP utilities
ii  libaprutil1-ldap                              1.3.12+dfsg-3                              Apache Portable Runtime Utility Library - LDAP Driver
ii  libkldap4                                     4:4.8.5-0ubuntu0.1                         library for accessing LDAP
ii  libldap-2.4-2                                 2.4.28-1.1ubuntu4.1                        OpenLDAP libraries
ii  libldap2-dev                                  2.4.28-1.1ubuntu4.1                        OpenLDAP development libraries
ii  libnet-ldap-perl                              1:0.4300-2ubuntu1                          client interface to LDAP servers
ii  libsasl2-modules-ldap                         2.1.25.dfsg1-3ubuntu0.1                    Cyrus SASL - pluggable authentication modules (LDAP)
ii  php5-ldap                                     5.3.10-1ubuntu3.4                          LDAP module for php5
ii  python-ldaptor                                0.0.43+debian1-6ubuntu1                    pure-Python library for LDAP operations
这已经不是第一次了,每次都会有一些新的奇怪的libs位置或者一些新的特殊包,或者其他什么。。。这次你们有人发现了吗?这是PHP5.4.7


谢谢,

信不信由你,configure无法找到/usr/lib/i386 linux gnu下的ldap.so

所以我做了这些链接:(liblber是libldap的朋友)

配置成功。坏消息是“制造”不起作用,因为:

/usr/bin/ld: ext/ldap/.libs/ldap.o: undefined reference to symbol 'ber_strdup@@OPENLDAP_2.4_2'
/usr/bin/ld: note: 'ber_strdup@@OPENLDAP_2.4_2' is defined in DSO /usr/lib/i386-linux-gnu/liblber-2.4.so.2 so try adding it to the linker command line
/usr/lib/i386-linux-gnu/liblber-2.4.so.2: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Erreur 1

这似乎是PHP中的一个bug-我见过PHP开发人员在过去修复过的一些bug。

请提供所需库的完整路径名,并与它的需求进行比较,以防有所不同,放置一个符号链接或指定with开关。我遇到了同样的问题,直到我还将liblber-2.4.so.2文件进行了符号链接,它才自行解决。我遇到了同样的问题。将
libldap.so
liblber.so
liblber-2.4.so.2
链接到
/usr/lib
,然后执行
make clean
并重新运行
/configure
make
为我修复它。非常感谢。
/usr/bin/ld: ext/ldap/.libs/ldap.o: undefined reference to symbol 'ber_strdup@@OPENLDAP_2.4_2'
/usr/bin/ld: note: 'ber_strdup@@OPENLDAP_2.4_2' is defined in DSO /usr/lib/i386-linux-gnu/liblber-2.4.so.2 so try adding it to the linker command line
/usr/lib/i386-linux-gnu/liblber-2.4.so.2: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Erreur 1