Instalando versões mais antigas de Ruby no Mac M1

 Contexto

Ao tentar instalar versões do Ruby como: 2.6.5; 2.5.1; e outras no Mac com chip M1 OS versão Monterey 12.2 por meio de uma ferramenta de versionamento como o RVM ou asdf-vm, obtive um erro no momento de fazer o build da instalação. As ultimas versões como >=2.7.x não sofrem com este problema.

Executando no terminal o comando

$ asdf install ruby 2.6.5

Obtemos o seguinte erro:


O log de erro indica que a configuração é invalida e que a maquina não foi reconhecida: "Invalid configuration `arm64-apple-darwin21.3.0': machine `arm64-apple' not recognized"


Solução

Isso acontece porque familias antigas do Ruby usam uma versão antiga do tool/config.sub que não sabe sobre o arm64-apple. Uma solução para conseguir "buildar" é passando a flag: CONFIGURE_OPTS="--build aarch64-apple-darwin20", ou como ultimo parâmetro do comando asdf install ruby... ou exportando a variável pro PATH no momento da instalação.


Um novo problema! 😅

Mesmo dando certo fazer o build da versão desejado do ruby, passando a flag CONFIGURE_OPTS="--build aarch64-apple-darwin20", outras gems vão quebrar na hora de fazer o build durante a instalação. Solução: usar Docker 🐳 😅

Postar um comentário

Postagem Anterior Próxima Postagem