Come devo installare un compilatore Fortran su un Mac? (OS X 10.x, x> = 4)


25

Domanda correlata: stato del sistema operativo Mac in Informatica scientifica e HPC

Un numero significativo di pacchetti software nella scienza computazionale è scritto in Fortran e Fortran non sta andando via. Per compilare altri pacchetti software è necessario anche un compilatore Fortran (un esempio notevole è SciPy ).

Tuttavia, Mac OS X non include un compilatore Fortran. Come devo installare un compilatore Fortran sul mio computer?


1
Non è solo Fortran. I Mac semplicemente non hanno i repository supportati di alta qualità come Debian dove tutto funziona. Installare praticamente qualsiasi cosa complicata su un Mac è una seccatura.
Stali,

Risposte:


32

Scegli il tuo veleno. Consiglio di usare Homebrew. Ho provato tutti questi metodi tranne "Fink" e "Altri metodi". Inizialmente, ho preferito MacPorts quando ho scritto questa risposta. Nei due anni successivi, Homebrew è cresciuto molto come progetto e si è dimostrato più gestibile rispetto a MacPorts, che può richiedere molto PATHhacking.

Installazione di una versione che corrisponde ai compilatori di sistema

Se vuoi che la versione di gfortran corrisponda alle versioni di gcc, g ++, ecc. Installate sul tuo computer, scarica la versione appropriata di gfortran da qui . Gli sviluppatori R e gli sviluppatori SciPy raccomandano questo metodo.

  • Vantaggi : abbina le versioni dei compilatori installati con XCode o con l'installer di Kenneth Reitz ; è improbabile che interferisca con gli aggiornamenti del sistema operativo; convive bene con MacPorts (e probabilmente Fink e Homebrew) perché si installa su /usr/bin. Non ostruisce i compilatori esistenti. Non è necessario modificare PATH.
  • Svantaggi : lo stack del compilatore sarà davvero vecchio. (GCC 4.2.1 è l'ultimo compilatore Apple; è stato rilasciato nel 2007.) Installa per /usr/bin.

Installazione di un file binario precompilato e aggiornato da HPC Mac OS X.

HPC Mac OS X ha binari per l'ultima versione di GCC (al momento della stesura di questo documento, 4.8.0 (sperimentale)), nonché binari g77 e un compilatore basato su f2c. Gli sviluppatori di PETSc raccomandano questo metodo nelle loro FAQ .

  • Vantaggi : con il comando giusto, installa in /usr/local; aggiornato. Non ostruisce i compilatori di sistema esistenti o l'approccio sopra. Non interferirà con gli aggiornamenti del sistema operativo.
  • Svantaggi : è necessario modificare PATH. Nessun modo semplice per passare da una versione all'altra. (È possibile modificare il PERCORSO, eliminare l'installazione del compilatore o kludge attorno ad esso.) Bloccerà altri metodi di installazione dei compilatori /usr/localperché i binari del compilatore sono semplicemente denominati 'gcc', 'g ++', ecc. (Senza un numero di versione e senza eventuali link simbolici).

Usa MacPorts

MacPorts ha diverse versioni di compilatori disponibili per l'uso.

  • Vantaggi : installa in /opt/local; port selectpuò essere utilizzato per alternare tra le versioni del compilatore (inclusi i compilatori di sistema). Non interferirà con gli aggiornamenti del sistema operativo.
  • Svantaggi : l'installazione delle porte tende a richiedere un intero "ecosistema software". I compilatori non includono simboli di debug, che possono rappresentare un problema quando si utilizza un debugger o si installa PETSc. ( Sean Farley propone alcune soluzioni alternative.) Inoltre richiede modifiche PATH. Potrebbe interferire con le installazioni di Homebrew e Fink. (Vedi questo post su SuperUser .)

Usa l'homebrew

Homebrew può anche essere usato per installare un compilatore Fortran.

  • Vantaggi : gestore pacchetti facile da usare; installa lo stesso compilatore Fortran di "Installazione di una versione corrispondente ai compilatori di sistema". Installa solo ciò di cui hai bisogno (diversamente da MacPorts). Potrebbe installare un nuovo stack GCC (4.7.0) usando il repository alternativo homebrew-dupes.
  • Svantaggi : eredita tutti gli svantaggi di "Installazione di una versione che corrisponde ai compilatori di sistema". Potrebbe essere necessario seguire il paradigma di Homebrew quando si installa altro software (non Homebrew) /usr/localper evitare di rovinare qualcosa. Potrebbe interferire con le installazioni di MacPorts e Fink. (Vedi questo post su SuperUser .) È necessario modificare PATH. Le installazioni potrebbero dipendere dalle librerie di sistema, il che significa che le dipendenze per i pacchetti Homebrew potrebbero rompersi durante un aggiornamento del sistema operativo. (Vedi questo articolo .) Non mi aspetto che ci siano dipendenze da librerie di sistema durante l'installazione di gfortran, ma potrebbero esserci dipendenze di questo tipo durante l'installazione di altri pacchetti Homebrew.

Usa Fink

In teoria, puoi usare Fink per installare gfortran. Non l'ho usato e non conosco nessuno che abbia (ed era disposto a dire qualcosa di positivo).

Altri metodi

Altri binari e collegamenti sono elencati nel wiki di GFortran . Alcuni dei collegamenti sono già elencati sopra. I restanti metodi di installazione possono o meno essere in conflitto con quelli sopra descritti; Utilizzare a proprio rischio.


C'è stato un tempo in cui Fink era il gestore di pacchetti preferito su MacPorts. Ho smesso di usarlo anni fa perché lo stack era vecchio e non mantenuto e non includeva molte delle librerie che usavo regolarmente. Con quasi tutti i metodi qui finisci con alcune cose gestite dal gestore dei pacchetti e alcune cose che arrotoli a mano. L'homebrew è migliore con un tale sistema, ma ha bisogno di molte più librerie per essere davvero competitivo con i MacPorts.
aterrel,

1
Puoi anche usare progetti come Sage (sagemath.org) o Qsnake ( qsnake.com ), che forniscono il loro compilatore Fortran e ti permettono di lavorare in "ambiente", dove puoi semplicemente chiamare "gfortran".
Ondřej Čertík,

Ho il gfortran di Fink sul mio box 10.5, ma non l'ho mai messo alla prova. E sarà la compilazione Cernlib e GEANT3, ma non ho alcun correre grandi lavori sotto o ultimamente.
dmckee,

Per Homebrew, gfortran è ora installato con brew install gcc:$ brew install gfortran gives the message: Error: No available formula for gfortran GNU Fortran is now provided as part of GCC, and can be installed with: brew install gcc
Dave Everitt il

Il collegamento alla pagina Wiki di Sean Farley non funziona più (in riferimento a come far funzionare i debugger con le installazioni di MacPorts). Questo può essere ricollegato?
TSGM,

1

EasyBuild ( http://hpcugent.github.com/easybuild ) ti consente di creare e installare facilmente il tuo set di compilatori GCC.

Fondamentalmente, gli dai un semplice file easyconfig (.eb) che specifica cosa vuoi costruire (versione GCC + + set di lingue che vuoi compilare per + ...), e quindi costruire e installare è un singolo comando. Direi che è un po 'come Homebrew, ma ti dà più libertà.

Inoltre, EasyBuild supporta molti altri pacchetti software (scientifici) che possono essere compilati e installati con un singolo comando, quindi vale la pena esaminarli.

Disclaimer: faccio parte del team EasyBuild. Costruire GCC (con gfortran incluso) dovrebbe funzionare su OS X, ma altre build potrebbero essere problematiche. Ci stiamo lavorando, facci sapere se hai dei problemi.


Hai fatto test su OS X? Quando dici "dovrebbe funzionare" è per esperienza o aspettative?
Deer Hunter

@DeerHunter: per esperienza, il mio laptop personale è un Mac con OS X. La creazione di GCC funziona, ma è noto che EasyBuild ha problemi con alcune altre build. Speriamo di esaminarlo presto.
Kenneth Hoste,

Upvoting ... Sembra che stia usando EASY_BUILD per impacchettare le chicche di Python in RPM ...
Deer Hunter

@DeerHunter EasyBuild al momento non ha supporto per il confezionamento di roba in RPM. Forse stai confondendo EasyBuild (che fornisce il comando 'eb'), con 'easy_install', lo strumento di installazione di Python fornito da setuptools / disitutils?
Kenneth Hoste,

Hai ragione; guasti di memoria casuali. Verificherà EasyBuild, comunque. Il packaging è fatto da fpm...
Deer Hunter

0

Suggerirei Intel Fortran Composer su MacOS. È buono, aggiornato e funziona. Una cosa negativa, non è gratuita. Penso che ci sia una valutazione gratuita di 30 giorni però.

Sotto Linux offrono una versione gratuita e non commerciale.


Gli utenti Linux possono anche installare Solaris Studio. È molto ben integrato (compilatori C / C ++ / Fortran). Dbxtool è molto utile, così come l'analizzatore (ad esempio per rilevare le condizioni di gara nei programmi openmp).
stali,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.