2012-02-08 13 views
10

He instalado gcc-4.6 usando la fórmula homebrew-alternatives gcc, pero parece que no puedo usar ese GCC para instalar otras fórmulas. Específicamente Open-MPI y boost.Usando Homebrew con GCC alternativo

¿Alguien sabe cómo hacer que Homebrew use este nuevo compilador?

Gracias!

Respuesta

5

Estas respuestas son bastante viejo. Parece que las versiones recientes de homebrew tienen una opción '--cc' que te permite seleccionar el compilador c que usarás. Por ejemplo

brew install --cc=gcc-6 <package-name> 

instalará utilizando la versión de gcc cerveza

2

De their wiki suena como que no son compatibles con otros compiladores:

Instalación de una versión personalizada de GCC o autotools en el $ PATH tiene el potencial de romper un montón de compilaciones. Así que nos atenemos a los compiladores proporcionados por Apple.

15

Homebrew no se puede adaptar a otras versiones de gcc utilizando las opciones de línea de comandos. Sin embargo, puede anular fácilmente el compilador anterior si edita la fórmula open-mpi y boost. Por ejemplo, puede agregar algunos comandos después de que el "def instalar" en mpi.rb abierta:

def install 
    # Force compilation with gcc-4.6 
    ENV['CC'] = '/usr/local/bin/gcc-4.6' 
    ENV['LD'] = '/usr/local/bin/gcc-4.6' 
    ENV['CXX'] = '/usr/local/bin/g++-4.6' 

    # Compiler complains about link compatibility with FORTRAN otherwise 
    ENV.delete('CFLAGS') 
    ENV.delete('CXXFLAGS') 

que trabajó para mí en León. Buena suerte.

+1

Gracias! Eso suena bastante más o menos exactamente lo que quería ... Intenté configurar CC y CXX desde la línea de comandos, pero al parecer la cocción mata el medio ambiente. –

15

Parece que las últimas versiones de Homebrew ahora admiten las variables de entorno HOMEBREW_CC y HOMEBREW_CXX.

Así que ahora usted puede hacer lo siguiente:

$ HOMEBREW_CC=gcc-4.2 HOMEBREW_CXX=g++-4.2 brew install ice 
+0

Gracias! Esto es asombroso –

+0

¡Trabajó para mí! 'HOMEBREW_CC = gcc-4.5 HOMEBREW_CXX = g ++ - 4.5 brew install sfcgal' – Ring

+0

por qué no puedo hacer' HOMEBREW_CC = gcc-4.9 HOMEBREW_CXX = g ++ - 4.9 brew install openmpi' – ilciavo