How do I install 32-bit libmysqlclient.so?
1. Instalação
Sua instalação do MySQL pode ter vindo de diferentes fontes. Pode ser um rpm fornecido com a distribuição ou um rpm da Sun / Oracle ou pode ter sido criado a partir de fontes.
rpm -q --whatprovides $(which mysql)
deve informar o nome do pacote como
-
MySQL-client-...
-
mysql-5.0...
-
mysql-community-server-client
-
mysql-5.1...
- %código%.
No CentOS, as duas primeiras opções são mais prováveis. no package provides /usr/bin/mysql
é um Sun / Oracle RPM e MySQL-client-5.0
poderia ter vindo da distribuição. Use mysql-5.0
para obter informações estendidas e verifique se a linha rpm -q --info <package_name>
confirma a hipótese.
Aqui está uma típica linha de fornecedores:
Name : MySQL-shared-community Relocations: (not relocatable)
Version : 5.0.96 Vendor: Oracle and/or its affiliates
1.1 MySQL da Sun / Oracle RPMs
Se a sua instalação do mysql vier da Sun / Oracle, vá para a página de download do servidor da comunidade MySQL , selecione entre Generally Available (GA), libera aquele que tem a versão do mysql 5.0 e arquitetura de 32 bits, escolha o pacote MySQL-shared-community, faça o download e instale-o com Vendor:
. Este pacote fornece exatamente a biblioteca rpm -i
.
1.2 mysql do CentOS
No CentOS5, libmysqlclient pertence ao pacote mysql.
yum install mysql.i386
deve fazer o truque.
No CentOS6, ele foi movido para um pacote mysql-libs separado.
2. Testando
Depois de instalar a biblioteca, verifique se as dependências da biblioteca dinâmica foram resolvidas corretamente:
ldd <your_binary> | grep libmysqlclient
deve retornar algo como
libmysqlclient.so.15 => /usr/lib/mysql/libmysqlclient.so.15
Se você quiser saber o que fornece uma versão de 32 bits de uma biblioteca de 64 bits específica, use /usr/lib/libmysqlclient.so.15
para determinar o nome do pacote. Em seguida, substitua x86_64 por i686 no nome para obter o nome da contraparte de 32 bits. Use rpm -q --whatprovides /path/to/your/lib64/library
para verificar se o pacote é fornecido pelos repositórios nos quais você se inscreveu.