11.29
No último post eu expliquei como instalar a gem do MySQL com o RVM em um ambiente 64 bits. A solução foi instalar o MySQL 64 bits já que o ruby instalado pelo RVM era 64 bits. Tudo estava funcionando normalmente.
Porém, instalando todas as gems necessárias para o projeto em que trabalho atualmente, tive problemas com a gem libxml-ruby: “Symbol not found: _xmlParserDebugEntities”. Este problema só aconteceu com o ruby 64 bits.
Estou utilizando o Mac OS X 10.5, mas acredito que se aplique para qualquer S.O. 64 bits.
Depois de muitas tentativas sem sucesso, decidi mudar a abordagem. Parti para instalação o ruby no RVM em 32 bits. Desta forma, tudo funcionou. Instalei várias gems, e nesse momento, estou rodando todos os meus projetos sem nenhum problema.
Instalando o ruby no RVM em 32 bits
No meu caso, vou utilizar a versão 1.8.7 do ruby. Caso deseje utilizar outra versão, apenas substitua 1.8.7 pela versão deseja nos comandos que forem executados.
Se você não tem o RVM instalado:
$ sudo gem install rvm $ rvm-install
Se você já tem o RVM instalado, verifique qual a arquitetura do ruby:
$ rvm 1.8.7 $ file $(which ruby)
Se o resultado for diferente de “Mach-O executable i386″, remova o ruby instalado:
$ rvm remove 1.8.7
O seu arquivo ~/.rvmrc deve ter o conteúdo abaixo. Caso ele não exista, crie.
rvm_archflags="-arch i386"
Agora instale o ruby:
$ export ARCHFLAGS="-arch i386"; optflags="-arch i386" rvm install 1.8.7
Para ter certeza, verifique a arquiterura do ruby instalado (deve ser “Mach-O executable i386″):
$ rvm 1.8.7 $ file $(which ruby)
Para aqueles que desejam instalar a gem do MySQL, tenha certeza que o MySQL instalado é 32 bits:
$ file $(which mysql)
Mais uma vez, o resultado deve ser ”Mach-O executable i386″. Caso não seja, reinstale o MySQL. Não se esqueça de baixar a versão x86.
Para instalar a gem do MySQL execute:
$ gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
A partir de agora, tudo deve funcionar normalmente. Instale todas as gems que você precisa.
Referências:
http://www.nuxlli.com.br/2009/11/24/para-tudo-instale-o-rvm-antes/
http://www.nuxlli.com.br/2009/11/24/rvm-onde-estou/
http://rvm.beginrescueend.com/mysql/
Ola,
so uma pergunta, voce tem um SO 64bis e nele usa o RVM pra 32bits.. eh isso ??
p.s.: excelente post
att,
Pois é! Não por minha vontade!