Eu tentei instalar a receita do mysql-connector-c via homebrew, e ela cria muito bem, mas produz a biblioteca x86_64:
$file ~/brew/lib/libmysql.dylib
.../brew/lib/libmysql.dylib: Mach-O 64-bit dynamically linked shared library x86_64
No entanto, eu preciso da biblioteca i386 para o meu projeto. Eu tentei dar CFLAGS e LDFLAGS assim:
CFLAGS="-arch i386 -arch x86_64" LDFLAGS="-arch i386 -arch x86_64" brew install mysql-connector-c
mas nada muda - ele ainda cria o binário x86_64 apenas. Existe alguma maneira de fazer o homebrew construir a biblioteca de arco duplo ou a biblioteca i386? Eu tenho a arquitetura do kernel definida como x86_64, se isso importa.
Respostas:
Você pode tentar o seguinte:
e modifique a inicialização no bloco "instalar".
Embora eu não tenha experimentado isso, você deve fazer algo assim:
Você pode verificar o exemplo aqui: Problemas com o homebrew, não é possível instalar nada ...
fonte
ENV['CFLAGS']=ENV['CXXFLAGS']="-arch i386"
. O i386 é um pouco excessivo.Foi encontrado um problema semelhante ao instalar o DevIL. Parece que o Homebrew está tentando limpar os parâmetros da linha de comando passados para as ferramentas, pelo menos no ML:
Funcionou para mim editar a fórmula, como na resposta de Walty, para especificar CFLAGS e CXXFLAGS, mas executar o install com um ambiente padrão:
fonte
Algumas fórmulas têm uma opção universal que permite compilar para i386 e x86_64 ao mesmo tempo:
O
mysql-connector-c
não o oferece como opção, mas achei muito fácil adicionar a opção a outra fórmula em que eu estava trabalhando: https://github.com/mxcl/homebrew/pull/18713/filesfonte