¿Cómo instalo GCC a través de Homebrew?

78

Estoy usando Homebrew exclusivamente (es decir, no uso y no usaré MacPorts o Fink). También quiero mantener las instalaciones manuales al mínimo. 1

... Pero ¿cómo puedo instalar GCC?

En primer lugar, por supuesto que he instalado Xcode pero la versión actual no se entrega con un GCC actualizado (necesito al menos 4.5, pero preferiría el más reciente), de hecho, no no se envía con un GCC adecuado en absoluto (solo se envía Clang) y eso parece ser un problema para Homebrew ...

Estoy al tanto de una lista de compiladores personalizados y GCC pero, de hecho, todas esas instalaciones requieren un GCC ya instalado; al menos, brew ing ellos falla con errores de vinculador en Lion que atribuyo a Clang, y -use-gcc no funciona por razones obvias.

brew doctor solo menciona lo que ya sé, que no hay un GCC (4.2.x) instalado.

1 Anteriormente he mezclado MacPorts, Homebrew y algunas instalaciones manuales y he terminado con un infierno de mantenimiento y control de versiones. No quiero ir allí de nuevo.

    
pregunta Konrad Rudolph 25.01.2012 - 11:25

6 respuestas

29

La solución provista por @Konrad Rudolph ya no es del todo correcta, ya que la fórmula de GCC que mencionó se movió de homebrew/dupes a homebrew/versions . Puede elegir qué versión de GCC instalar. Por ejemplo, al momento de escribir esta respuesta, las versiones 4.5, 4.7 y 4.8 están disponibles. Puede consultar qué versiones están disponibles aquí .

En resumen, puede instalar GCC 4.8 utilizando

brew tap homebrew/versions
brew install [flags] gcc48

Puedes ver las banderas de instalación disponibles usando

brew options gcc48
    
respondido por el yihangho 24.03.2013 - 17:32
38

Solución casera

Para responder mi propia pregunta, homebrew-versions ahora tiene una actualización bastante actualizada fórmula de GCC . Se puede instalar usando

brew install [flags] https://raw.github.com/Homebrew/homebrew-versions/gcc48.rb

Donde [flags] debe incluir todos los idiomas requeridos, por ejemplo, ( --enable-cxx --enable-fortran ).

Esto instalará los ejecutables con un sufijo, es decir, se debe acceder a gcc como gcc-version para evitar choques. Si es necesario, se pueden crear enlaces simbólicos apropiados para que esta versión sea la predeterminada.

Instalación manual

Alternativamente , un GCC actualizado (en el momento de la escritura) se puede compilar manualmente usando el siguiente script de shell :

VERSION=4.7.0
PREFIX=/usr/gcc-$(VERSION)
LANGUAGES=c,c++,fortran
MAKE=make
# Or
# MAKE='make -j 4' # to compile using four cores

brew-path() { brew info $1 | head -n3 | tail -n1 | cut -d' ' -f1; }

# Prerequisites

brew install gmp
brew install mpfr
brew install libmpc

# Download & install the latest GCC

mkdir -p $PREFIX
mkdir temp-gcc
cd temp-gcc
wget ftp://ftp.gnu.org/gnu/gcc/gcc-$VERSION/gcc-$VERSION.tar.gz
tar xfz gcc-$VERSION.tar.gz
rm gcc-$VERSION.tar.gz
cd gcc-$VERSION

mkdir build
cd build

../configure \
   --prefix=$PREFIX \
   --with-gmp=$(brew-path gmp) \
   --with-mpfr=$(brew-path mpfr) \
   --with-mpc=$(brew-path libmpc) \
   --program-suffix=-$VERSION \
   --enable-languages=$LANGUAGES \
   --with-system-zlib \
   --enable-stage1-checking \
   --enable-plugin \
   --enable-lto \
   --disable-multilib

$MAKE bootstrap

make install

# Uncomment for cleanup …
# cd ../../..
# rm -r temp-gcc

Esto pondrá a GCC en la ruta /usr/gcc-4.7.0 . Ahora todo lo que necesita hacer es crear enlaces simbólicos a los ejecutables o agregar el directorio bin a la variable $PATH .

    
respondido por el Konrad Rudolph 25.01.2012 - 15:21
11

He visto a alguien enlazar a este viejo post hoy. La mejor manera de instalar GCC en homebrew en este momento es solo brew install gcc . Si tiene instaladas las Herramientas de línea de comandos de XCode (están separadas de XCode; puede instalarlas con xcode-select --install ), se instalará una versión precompilada (que es muy rápida).     

respondido por el Tim Smith 26.07.2014 - 05:35
3

Yo también tuve este problema. Además, necesito usar gfortran, que no viene con la instalación estándar (obsoleta) de llvm-gcc de Mac.

Descubrí que las compilaciones High Performance Computing de gcc están actualizadas y funciona muy bien en Lion.

    
respondido por el cm2 25.01.2012 - 19:02
2

En caso de que alguien vea este hilo antiguo, parece que las versiones / homebrew, utilizadas en la respuesta actualmente aceptada, han sido en desuso a favor de homebrew / core . Solo ejecuta brew install <formula> .

    
respondido por el Avi 28.04.2017 - 20:58
0

Puede intentar esto: enlace : lo he utilizado con éxito después de actualizar a Lion para compilar paquetes con Homebrew y otros (Ruby).

De la lectura me:

OSX GCC Installer Descargar e instalar el instalador masivo de Xcode es una gran molestia si solo quieres GCC y herramientas relacionadas.

El instalador osx-gcc le permite instalar los compiladores esenciales de paquetes binarios ya creados o lo ayuda a crear su propio instalador.

    
respondido por el Darren Newton 25.01.2012 - 13:52

Lea otras preguntas en las etiquetas