У меня есть приложение, скомпилированное на (32-битном) Centos 6.2, которое мне нужно запустить на Centos 5.7, но оно жалуется, что ему нужно libmysqlclient.so.16
Я не уверен, где найти этот файл (я пробовал «yum предоставляет», но ничего не предоставляет). У меня включено репо epel, но там тоже ничего.
Может кто-нибудь посоветует, как это добавить? (Или это вообще возможно)
mysql.com очевидно предлагает пакет "compat" для RHEL5, который имеет следующие библиотеки:
$ rpm -qlp MySQL-shared-compat-5.1.49-1.rhel5.i386.rpm
/usr/lib/libmysqlclient.so
/usr/lib/libmysqlclient.so.10
/usr/lib/libmysqlclient.so.10.0.0
/usr/lib/libmysqlclient.so.12
/usr/lib/libmysqlclient.so.12.0.0
/usr/lib/libmysqlclient.so.14
/usr/lib/libmysqlclient.so.14.0.0
/usr/lib/libmysqlclient.so.15
/usr/lib/libmysqlclient.so.15.0.0
/usr/lib/libmysqlclient.so.16
/usr/lib/libmysqlclient.so.16.0.0
/usr/lib/libmysqlclient_r.so
/usr/lib/libmysqlclient_r.so.10
/usr/lib/libmysqlclient_r.so.10.0.0
/usr/lib/libmysqlclient_r.so.12
/usr/lib/libmysqlclient_r.so.12.0.0
/usr/lib/libmysqlclient_r.so.14
/usr/lib/libmysqlclient_r.so.14.0.0
/usr/lib/libmysqlclient_r.so.15
/usr/lib/libmysqlclient_r.so.15.0.0
/usr/lib/libmysqlclient_r.so.16
/usr/lib/libmysqlclient_r.so.16.0.0
Ссылка для скачивания: http://downloads.mysql.com/archives/mysql-5.1/MySQL-shared-compat-5.1.49-1.rhel5.i386.rpm
Я не пробовал это делать, поэтому не уверен, насколько хорошо это сработает.
При установке модуля mysql для PHP 5.4 (yum install php54w-mysql *) я обнаружил следующую ошибку:
Missing Dependency: libmysqlclient.so.16(libmysqlclient_16) is needed by package php-mysql-package-version
Следовательно, я загрузил "compat" rpm, который установил все различные версии libmysqlclient.so. {12,14,15,16}, и после этого модуль MySQL был установлен без каких-либо проблем.
Вы можете сослаться эта ссылка найти подробные инструкции.
Похоже, вам нужно установить следующий пакет:
$ yum install mysql-devel
Если у вас уже есть другой файл libmysqlclient.so.15
, это означает, что вам нужно установить другую версию mysql-devel
чтобы получить этот файл. Я думаю, вам нужно изменить свое приложение, если это возможно, или установить старую версию mysql-devel.
Это грязный обходной путь, который вы можете попробовать - создать символическую ссылку с libmysqlclient.so.15 на libmysqlclient.so.16. Я не уверен в результате. Можете попробовать самостоятельно :)