2013-08-20 2 views
1

У меня есть драйвер Microsoft ODBC, установленный под Centos, отлично работающий с UnixODBC 2.3.0 в соответствии с инструкциями. Я пытаюсь установить php-ldap, и он обновит мой php, который будет прекрасен, за исключением того, что он не работает при зависимости, которая равна:Драйвер Microsoft ODBC конфликтует с libodbc.so.2, устанавливающим php-ldap

libodbc.so.2() (64 бит) требуется php-odbc-5.4. 18-1.el6.remi.x86_64

Я помню, что у меня были проблемы с этим файлом, который мне пришлось связать с libodbc.so.1, чтобы получить работу php-pdo. Теперь для обновления в PHP он ищет этот файл, и, возможно, у меня есть 32-разрядная версия вместо 64-битного. Я попытался скопировать версию 2.3.1 и использовать стандарт 2.2.4, но ничего не работает.

Он живет в

/usr/lib64/libodbc.so.2 

Я чувствую, что если я получаю неправильный драйвер там, PHP-PDO/MS ODBC перестанет работать именно так, PHP-LDAP может работать. Моя текущая версия PHP - 5.4.16, и я предпочел бы просто получить php-ldap для этого, но все ссылки кажутся мертвыми - я просто хочу установить его через RPM. Прямо сейчас я использую remi-репо, чтобы получить последнюю версию PHP, и хотел бы, чтобы путь обновления не вызывал проблем с libodbc.

LDD на файл:

linux-vdso.so.1 => (0x00007fff25fce000) 
libdl.so.2 => /lib64/libdl.so.2 (0x00007f5754ac9000) 
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f57548ac000) 
libc.so.6 => /lib64/libc.so.6 (0x00007f5754518000) 
/lib64/ld-linux-x86-64.so.2 (0x00007f5754f41000) 

ответ

0

То, что я сделал, было вручную установить php_pdo, заставляя обороты. Это сработало, поэтому я не знаю, в чем проблема. Это сложная установка для работы с драйверами microsoft. & & linux.

+0

Аналогичная проблема возникает при установке драйвера odbc 13 для сервера MSSQL. 'error: Failed dependencies: libodbcinst.so.2() (64 бит) необходим для msodbcsql-13.1.4.0-1.x86_64 unixODBC> = 2.3.1 необходим для msodbcsql-13.1.4.0-1.x86_64 ' Не могли бы вы помочь мне узнать, что именно вы сделали? –

+0

Отключить приоритеты, отредактировав '/ etc/yum/pluginconf.d/priority.conf' и установить' enabled = 0' и смог решить вышеупомянутую проблему –

0

Посмотрите в /etc/odbcinst.ini путь к вашему драйверу необходимо изменить Для примера (FreeTDS)

[FreeTDS] 
Description=FreeTDS v0.91 
Driver=/usr/lib64/libtdsodbc.so 
... 
+0

Что я сделал, это вручную установить php_pdo, заставив RPM. Это сработало, поэтому я не знаю, в чем проблема. Это сложная установка. – stabbie

+0

Btw путь был верным и все, я думаю, что это больше связано с процессом установки и некоторой небольшой ошибкой где-то ... – stabbie