Я установил заголовки разработки LDAP:
apt-get install libldb-dev
Это добавило несколько заголовков 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
Когда я настраиваю и ссылаюсь на каталог:
./configure --with-ldap=/usr/include
Я получаю эту ошибку:
...
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.
Ответы:
Я столкнулся с этой проблемой, пытаясь включить расширения PHP в контейнер Docker. Вот что я должен был сделать:
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
источник
Это сработало для меня отлично.
Установите библиотеки LDAP:
apt-get install libldb-dev
Создайте файлы компоновщика SO:
Настройте PHP:
./configure --with-ldap=/usr
источник
sudo ln -s /usr/lib/i386-linux-gnu/liblber.so /usr/lib
,sudo ln -s /usr/lib/i386-linux-gnu/libldap.so /usr/lib
.Согласно этому комментарию в выпусках официального образа PHP Docker, самый чистый способ сделать это - использовать
libldap2-dev
(в Debian / Ubuntu) и вызыватьconfigure
с помощью--with-libdir=lib/x86_64-linux-gnu
.источник
Версия PHP 5.6.20 Debian и основана на:
su aptitude install libldb-dev ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so
затем попробуйте скомпилировать егоисточник
У меня была такая же проблема, и ни один из ответов выше не помог. Затем, покопавшись в файле конфигурации PHP, я нашел другое решение.
1) Проверьте, какой каталог lib вы используете. Если вы используете переключатель,
--with-libdir=lib64
то вы должны иметьlibldap.so
и другие.so
файлы в/usr/lib64
. Если вы не указываете libdir, то.so
файлы должны быть в/usr/lib
. Вы можете создавать символические ссылки, если.so
файл находится в нестандартном каталоге (например/usr/lib64
), но вы не хотите указывать libdir.2) Используйте переключатель
--with-ldap=yes
Интересно, почему это не задокументировано в справке по настройке?
источник
(Предполагая, что вы находитесь в Ubuntu) Пожалуйста, попробуйте
configure --with-ldap-libs=/usr/lib/i386-linux-gnu/
. Если это не помогло, пожалуйста, дополните свой ответ подробностями о том, какой дистрибутив Linux вы используете и какой проект создаете.источник
configure: error: Cannot find ldap libraries in /usr/lib.