Eu instalei os cabeçalhos de desenvolvimento LDAP:
apt-get install libldb-dev
Isso adicionou alguns cabeçalhos LDAP:
root@crunchbang:/usr/include# ls -la ldap*
-rw-r--r-- 1 root root 9466 Apr 23 2013 ldap_cdefs.h
-rw-r--r-- 1 root root 1814 Apr 23 2013 ldap_features.h
-rw-r--r-- 1 root root 65213 Apr 23 2013 ldap.h
-rw-r--r-- 1 root root 9450 Apr 23 2013 ldap_schema.h
-rw-r--r-- 1 root root 3468 Apr 23 2013 ldap_utf8.h
Quando eu configuro e faço referência ao diretório:
./configure --with-ldap=/usr/include
Eu recebo este erro:
...
checking for LDAP support... yes
checking for LDAP Cyrus SASL support... no
checking size of long int... 4
configure: error: Cannot find ldap libraries in /usr/include.
Respostas:
Corri para esse problema tentando envolver as extensões PHP em um contêiner do Docker. Aqui está o que eu tinha que fazer:
apt-get install libldb-dev libldap2-dev
ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so \ && ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so
fonte
Isso funcionou para mim perfeitamente.
Instale bibliotecas LDAP:
apt-get install libldb-dev
Crie arquivos de vinculador SO:
Configure o PHP:
./configure --with-ldap=/usr
fonte
sudo ln -s /usr/lib/i386-linux-gnu/liblber.so /usr/lib
,sudo ln -s /usr/lib/i386-linux-gnu/libldap.so /usr/lib
.A maneira mais limpa de fazê-lo, de acordo com este comentário nas edições da imagem oficial do PHP Docker, é usando
libldap2-dev
(no Debian / Ubuntu) e ligandoconfigure
com--with-libdir=lib/x86_64-linux-gnu
.fonte
Versão do PHP 5.6.20 debian e based:
su aptitude install libldb-dev ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so
então, tente compilá-lofonte
Eu tive esse mesmo problema e nenhuma das respostas acima ajudou. Depois de algumas pesquisas no arquivo de configuração do PHP, encontrei uma solução diferente.
1) Verifique qual diretório de lib você está usando. Se você usar a opção
--with-libdir=lib64
, deverá colocar oslibldap.so
e outros.so
arquivos/usr/lib64
. Se você não está especificando um libdir em seguida, os.so
arquivos devem estar no/usr/lib
. Você pode criar links simbólicos se o.so
arquivo estiver em um diretório não padrão (como/usr/lib64
), mas não desejar especificar o libdir.2) Use o interruptor
--with-ldap=yes
Eu me pergunto por que isso não está documentado na ajuda do configure.
fonte
(Supondo que você esteja no Ubuntu) Por favor, tente
configure --with-ldap-libs=/usr/lib/i386-linux-gnu/
. Se isso não ajudar, estenda sua resposta com detalhes sobre qual distribuição Linux você usa e qual projeto está construindo.fonte
configure: error: Cannot find ldap libraries in /usr/lib.