Traté de instalar la receta mysql-connector-c a través de homebrew, y funciona muy bien, pero produce la biblioteca x86_64:
$file ~/brew/lib/libmysql.dylib
.../brew/lib/libmysql.dylib: Mach-O 64-bit dynamically linked shared library x86_64
Sin embargo, necesito la biblioteca i386 para mi proyecto. Traté de darle CFLAGS y LDFLAGS de esta manera:
CFLAGS="-arch i386 -arch x86_64" LDFLAGS="-arch i386 -arch x86_64" brew install mysql-connector-c
pero nada cambia: todavía construye x86_64 solo binario. ¿Hay alguna manera de hacer que homebrew construya la biblioteca de doble arco o la biblioteca i386? Tengo la arquitectura del kernel establecida en x86_64, si es importante.
Respuestas:
Puedes probar lo siguiente:
y luego modifique la inicialización en el bloque "instalar".
Aunque no probé esto, se supone que debes hacer algo como esto:
Puede consultar el ejemplo aquí: Problemas con homebrew, no se puede instalar nada ...
fuente
ENV['CFLAGS']=ENV['CXXFLAGS']="-arch i386"
. i386 es un poco excesivo.Se encontró un problema similar al instalar DevIL. Parece que Homebrew está tratando de desinfectar los parámetros de la línea de comandos pasados a las herramientas, al menos en ML:
Me funcionó editar la fórmula como en la respuesta de Walty para especificar CFLAGS y CXXFLAGS, pero ejecutar install con un entorno estándar en su lugar:
fuente
Algunas fórmulas tienen una opción universal que le permitirá compilar tanto para i386 como para x86_64 al mismo tiempo:
El
mysql-connector-c
no lo ofrece como una opción, pero me pareció muy fácil para agregar la opción a otra fórmula que estaba trabajando: https://github.com/mxcl/homebrew/pull/18713/filesfuente