Come installo GCC tramite Homebrew?

78

Sto utilizzando Homebrew esclusivamente (ad esempio, io non uso MacPorts o Fink). Voglio anche mantenere le installazioni manuali al minimo. 1

... Ma come posso installare GCC?

Prima di tutto ho ovviamente installato Xcode, ma la versione attuale non è disponibile con un GCC aggiornato (ho bisogno di almeno 4.5, ma preferirei il più recente) - in realtà, non funziona non viene fornito con un appropriato GCC affatto (spedisce solo Clang) e sembra essere un problema per Homebrew ...

Sono a conoscenza di un elenco di GCC personalizzati e compilatori incrociati ma in realtà tutte queste installazioni richiedono un GCC già installato - almeno, brew non riesce con errori di linker su Lion che attribuisco a Clang e -use-gcc non funziona per ovvi motivi.

brew doctor menziona solo ciò che già so, che non c'è GCC (4.2.x) installato.

1 In precedenza ho mixato MacPorts, Homebrew e alcune installazioni manuali e ho finito con un inferno di manutenzione e versioning. Non voglio andare di nuovo lì.

    
posta Konrad Rudolph 25.01.2012 - 11:25
fonte

6 risposte

29

La soluzione fornita da @Konrad Rudolph non è del tutto corretta poiché la formula GCC che ha menzionato è stata spostata da homebrew/dupes a homebrew/versions . Puoi scegliere quale versione di GCC installare. Ad esempio, al momento della stesura di questa risposta, sono disponibili le versioni 4.5, 4.7 e 4.8. Puoi verificare quali versioni sono disponibili qui .

In breve, è possibile installare GCC 4.8 usando

brew tap homebrew/versions
brew install [flags] gcc48

Puoi visualizzare i flag di installazione disponibili usando

brew options gcc48
    
risposta data 24.03.2013 - 17:32
fonte
38

Soluzione Homebrew

Per rispondere alla mia stessa domanda, homebrew-versions ora ha abbastanza aggiornato formula di GCC . Può essere installato usando

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

Dove [flags] dovrebbe includere tutte le lingue richieste, ad es. ( --enable-cxx --enable-fortran ).

Questo installerà gli eseguibili con un suffisso, cioè gcc deve essere accessibile come gcc-version per evitare interferenze. Se necessario, è possibile creare collegamenti simbolici appropriati per rendere questa versione predefinita.

Installazione manuale

In alternativa , un GCC aggiornato (al momento della scrittura) può essere compilato manualmente utilizzando il seguente script di 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

Questo metterà in scena GCC nel percorso /usr/gcc-4.7.0 . Ora tutto ciò che devi fare è creare collegamenti simbolici agli eseguibili o aggiungere la directory bin alla variabile $PATH .

    
risposta data 25.01.2012 - 15:21
fonte
12

Ho visto qualcuno collegare a questo vecchio post oggi. Il modo migliore per installare GCC in homebrew adesso è solo brew install gcc . Se hai installato XCode Command Line Tools (sono separati da XCode, puoi installarli con xcode-select --install ) installati, verrà installata una versione precompilata (che è molto veloce).

    
risposta data 26.07.2014 - 05:35
fonte
3

Anch'io ho avuto questo problema. Inoltre, ho bisogno di usare gfortran, che non viene fornito con l'installazione standard (obsoleta) di llvm-gcc di Mac.

Ho trovato i build High Performance Computing di gcc per essere aggiornati e funziona benissimo su Lion.

    
risposta data 25.01.2012 - 19:02
fonte
2

Se qualcuno guarda questo vecchio thread, sembra che le versioni homebrew / utilizzate, nella risposta attualmente accettata, siano state deprecate a favore di homebrew / core . Esegui solo brew install <formula> .

    
risposta data 28.04.2017 - 20:58
fonte
0

Potresti provare questo - link - L'ho usato con successo dopo l'aggiornamento a Lion per compilare pacchetti con Homebrew e altri (Ruby).

Da leggere:

Programma di installazione GCC OSX Il download e l'installazione dell'enorme installer Xcode è una seccatura enorme se vuoi solo GCC e gli strumenti correlati.

Il programma di installazione di osx-gcc consente di installare i compilatori essenziali da pacchetti binari predefiniti o di creare il proprio programma di installazione.

    
risposta data 25.01.2012 - 13:52
fonte

Leggi altre domande sui tag