Я не могу использовать гем mysql ruby, потому что получаю эту ошибку:
Неверная версия клиентской библиотеки MySQL! Этот гем был скомпилирован для 5.6.15, но клиентская библиотека - 5.5.34. (RuntimeError)
apt-get устанавливает libmysqlclient-dev-5.5
$ sudo apt-get install libmysqlclient-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
libmysqlclient-dev
0 upgraded, 1 newly installed, 0 to remove and 41 not upgraded.
Need to get 1,397 kB of archives.
After this operation, 5,629 kB of additional disk space will be used.
Get:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ precise-updates/main libmysqlclient-dev amd64 5.5.34-0ubuntu0.12.04.1 [1,397 kB]
Fetched 1,397 kB in 0s (11.8 MB/s)
Selecting previously unselected package libmysqlclient-dev.
(Reading database ... 63296 files and directories currently installed.)
Unpacking libmysqlclient-dev (from .../libmysqlclient-dev_5.5.34-0ubuntu0.12.04.1_amd64.deb) ...
Processing triggers for man-db ...
Setting up libmysqlclient-dev (5.5.34-0ubuntu0.12.04.1) ...
Как установить версию 5.6 libmysqlclient-dev?
I ' м с использованием Ubuntu 12.04.
Если вы хотите официальный путь, вы должны перейти на 12.10 или выше.
Но косвенным путем является Percona Server с XtraDB, обеспечивающий версию libmysqlclient-dev 5.6 . Так что, если вы добавите их PPA, это даст вам возможность установить libmysqlclient-dev 5.6.
Чтобы добавить его, сделайте это в своем терминале
gpg --keyserver hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
gpg -a --export CD2EFD2A | apt-key add -
sudo sh -c 'echo "deb http://repo.percona.com/apt precise main" >> /etc/apt/sources.list.d/percona.list'
Затем sudo apt-get update
и повторите попытку.
У меня была такая же проблема в Ubuntu 14.04 Trusty. Отказ от ответственности: я не эксперт в этом, но это то, что я сделал, чтобы установить его.
Я думаю, что нужна библиотека libperconaserverclient18.1-dev
.
Установив это, установка mysql2 gem пошла дальше, но я получил следующую ошибку: ERROR: Failed to build gem native extension
. В журналах я видел:
/usr/bin/ld: cannot find -lssl
/usr/bin/ld: cannot find -lcrypto
collect2: error: ld returned 1 exit status
make: *** [mysql2.so] Error 1
Исправление к этому было установить libssl-dev
. Я также обнаружил, что у меня установлено 2 неожиданных / нежелательных пакета, mysql-common
и libmysqlclient18
. Это потому, что percona-server-server-5.6
зависит от libdbd-mysql-perl
, который зависит от libmysqlclient18
. Это описано в ошибка сервера percona 1407889 . Это приводит к некоторой устаревшей конфигурации в my.cnf
, но это не showtopper.