Подтвердить что ты не робот

Mysql2.so: libmysqlclient_r.so.15: невозможно открыть файл общих объектов: такой файл или каталог отсутствует

Я пытаюсь запустить Rails два приложения с сервером Ubuntu 10.04, sphinx, myql2 версии 0.2.7 и percona server 5.5 (Myslql 5.5). mysql2 в irb работает нормально, я могу подключиться к db. это приложение rails 2 работает на другом сервере Centos с MySql 5.1. Когда я запускаю:

script/server -e production 

Я получаю:

mysql2.so: libmysqlclient_r.so.15: невозможно открыть файл общих объектов: нет такого файла или каталога

вот те библиотеки, которые у меня есть:

# ls -l /usr/lib |grep sql
-rw-r--r--  1 root root 10581008 2011-11-18 16:51 libmysqlclient.a
lrwxrwxrwx  1 root root       16 2011-12-10 05:48 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx  1 root root       20 2011-12-10 05:48 libmysqlclient.so -> libmysqlclient.so.16
lrwxrwxrwx  1 root root       29 2011-12-10 06:01 libmysqlclient.so.15 -> /usr/lib/libmysqlclient.so.16
-rw-r--r--  1 root root     7332 2011-11-18 16:44 libmysqlservices.a
-rw-r--r--  1 root root   562520 2010-02-08 06:59 libsqlite3.a
-rw-r--r--  1 root root      973 2010-02-08 06:59 libsqlite3.la
lrwxrwxrwx  1 root root       19 2011-12-07 17:15 libsqlite3.so -> libsqlite3.so.0.8.6
lrwxrwxrwx  1 root root       19 2011-03-09 18:43 libsqlite3.so.0 -> libsqlite3.so.0.8.6
-rw-r--r--  1 root root   528668 2010-02-08 06:59 libsqlite3.so.0.8.6
drwxr-xr-x  3 root root     4096 2011-12-10 05:47 mysql

Как я могу это исправить?

4b9b3361

Ответ 1

Если вы снова столкнетесь с этой ошибкой после обновления до 12.04 (или для людей, прибывающих сюда после того, как вы запустили заголовок этой страницы после обновления до 12.04), для меня работало следующее:

gem uninstall mysql2
gem install mysql2

Это перекомпилит драгоценный камень, используя libmysqlclient18, и сработает для меня.

Надеюсь, что кто-то поможет там.

Ответ 2

Вам необходимо установить библиотеки разработки. Попробуйте

sudo apt-get install libmysqlclient20-dev

или

sudo apt-get install libmysqlclient19-dev

Ответ 3

Установите клиентские библиотеки mysql: apt-get install libmysqlclient16

Ответ 4

У меня была эта ошибка с mysql-python и решил это с помощью pip:

pip uninstall mysql-python
pip install mysql-python

Ответ 5

Другой вариант, который не упоминался здесь, но был дан ответ в этом вопросе. Вам нужно установить MySQL-python с помощью параметра --no-binary. Этот вопрос намного проще найти, поэтому я добавляю ответ здесь для справки:

Сначала удалите текущую версию MySQL-python:

pip uninstall MySQL-python

Затем установите MySQL-python с параметром --no-binary:

pip install --no-binary MySQL-python MySQL-python