¿Cómo debo instalar un compilador Fortran en una Mac? (OS X 10.x, x> = 4)


25

Pregunta relacionada: Estado del sistema operativo Mac en informática científica y HPC

Un número significativo de paquetes de software en ciencia computacional están escritos en Fortran, y Fortran no va a desaparecer. También se requiere un compilador Fortran para construir otros paquetes de software (un ejemplo notable es SciPy ).

Sin embargo, Mac OS X no incluye un compilador Fortran. ¿Cómo debo instalar un compilador Fortran en mi máquina?


1
No es solo Fortran. Las Mac simplemente no tienen los repositorios compatibles de alta calidad como Debian donde todo simplemente funciona. Instalar prácticamente cualquier cosa complicada en una Mac es una molestia.
stali

Respuestas:


32

Elige tu veneno. Recomiendo usar Homebrew. He intentado todos estos métodos excepto "Fink" y "Otros métodos". Originalmente, prefería MacPorts cuando escribí esta respuesta. En los dos años posteriores, Homebrew ha crecido mucho como proyecto y ha demostrado ser más fácil de mantener que MacPorts, lo que puede requerir mucho PATHpirateo.

Instalar una versión que coincida con los compiladores del sistema

Si desea que la versión de gfortran coincida con las versiones de gcc, g ++, etc. instaladas en su máquina, descargue la versión adecuada de gfortran desde aquí . Los desarrolladores de R y los desarrolladores de SciPy recomiendan este método.

  • Ventajas : coincide con las versiones de compiladores instalados con XCode o con el instalador de Kenneth Reitz ; es poco probable que interfiera con las actualizaciones del sistema operativo; coexiste muy bien con MacPorts (y probablemente Fink y Homebrew) porque se instala en /usr/bin. No golpea los compiladores existentes. No es necesario editar PATH.
  • Desventajas : la pila del compilador será muy antigua. (GCC 4.2.1 es el último compilador de Apple; se lanzó en 2007.) Se instala en /usr/bin.

Instalación de un binario actualizado y precompilado desde HPC Mac OS X

HPC Mac OS X tiene binarios para la última versión de GCC (en el momento de escribir este artículo, 4.8.0 (experimental)), así como binarios g77 y un compilador basado en f2c. Los desarrolladores de PETSc recomiendan este método en sus preguntas frecuentes .

  • Ventajas : con el comando correcto, se instala en /usr/local; A hoy. No bloquea los compiladores de sistemas existentes, ni el enfoque anterior. No interferirá con las actualizaciones del sistema operativo.
  • Desventajas : necesidad de editar PATH. No hay una manera fácil de cambiar de versión. (Puede modificar la RUTA, eliminar la instalación del compilador, o analizarla a su alrededor.) Analizará otros métodos de instalación de compiladores /usr/localporque los binarios del compilador simplemente se denominan 'gcc', 'g ++', etc. (sin un número de versión y sin cualquier enlace simbólico).

Use MacPorts

MacPorts tiene varias versiones de compiladores disponibles para su uso.

  • Ventajas : se instala en /opt/local; port selectse puede usar para cambiar entre las versiones del compilador (incluidos los compiladores del sistema). No interferirá con las actualizaciones del sistema operativo.
  • Desventajas : la instalación de puertos tiende a requerir un "ecosistema de software" completo. Los compiladores no incluyen símbolos de depuración, lo que puede suponer un problema al usar un depurador o al instalar PETSc. ( Sean Farley propone algunas soluciones). También requiere cambios PATH. Podría interferir con las instalaciones de Homebrew y Fink. (Ver esta publicación en SuperUser ).

Use Homebrew

Homebrew también se puede utilizar para instalar un compilador Fortran.

  • Ventajas : Administrador de paquetes fácil de usar; instala el mismo compilador Fortran que en "Instalación de una versión que coincida con los compiladores del sistema". Solo instale lo que necesita (en contraste con MacPorts). Podría instalar una nueva pila GCC (4.7.0) utilizando el repositorio alternativo homebrew-dupes.
  • Desventajas : Hereda todas las desventajas de "Instalar una versión que coincida con los compiladores del sistema". Es posible que deba seguir el paradigma de Homebrew al instalar otro software (que no sea Homebrew) /usr/localpara evitar estropear cualquier cosa. Podría interferir con las instalaciones de MacPorts y Fink. (Vea esta publicación en SuperUser .) Necesita cambiar PATH. Las instalaciones pueden depender de las bibliotecas del sistema, lo que significa que las dependencias de los paquetes de Homebrew podrían romperse en una actualización del sistema operativo. (Consulte este artículo ). No esperaría que hubiera dependencias de la biblioteca del sistema al instalar gfortran, pero podría haber tales dependencias al instalar otros paquetes de Homebrew.

Utilizar Fink

En teoría, puede usar Fink para instalar gfortran. No lo he usado, y no conozco a nadie que lo haya hecho (y estaba dispuesto a decir algo positivo).

Otros metodos

Otros binarios y enlaces se enumeran en el wiki de GFortran . Algunos de los enlaces ya están listados arriba. Los métodos de instalación restantes pueden o no entrar en conflicto con los descritos anteriormente; Úselo bajo su propio riesgo.


Hubo un momento en que Fink era el administrador de paquetes preferido sobre MacPorts. Dejé de usarlo hace años porque la pila era vieja y no se mantenía y no incluía muchas de las bibliotecas que usaba regularmente. Con casi todos los métodos aquí, terminas con algunas cosas administradas por el administrador de paquetes y algunas cosas que haces a mano. Homebrew es mejor con dicho sistema, pero necesita muchas más bibliotecas para ser realmente competitivo con MacPorts.
aterrel

1
También puede usar proyectos como Sage (sagemath.org) o Qsnake ( qsnake.com ), que envían su propio compilador Fortran y le permiten trabajar en "entorno", donde simplemente puede llamar "gfortran".
Ondřej Čertík

Tengo el gfortran de fink en mi caja de 10.5, pero nunca lo he puesto a prueba realmente serio. Se va a compilar cernlib y GEANT3, pero no he ejecutar cualquier trabajo grandes, ya sea en virtud de los últimos tiempos.
dmckee

Para Homebrew, gfortran ahora está instalado 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

El enlace a la página Wiki de Sean Farley ya no funciona (en referencia a cómo hacer que los depuradores funcionen con las instalaciones de MacPorts). ¿Se puede volver a vincular esto?
TSGM

1

EasyBuild ( http://hpcugent.github.com/easybuild ) le permite crear e instalar fácilmente su propio conjunto de compiladores GCC.

Básicamente, le da un archivo simple easyconfig (.eb) que especifica lo que desea construir (versión GCC + + conjunto de idiomas para los que desea compiladores + ...), y luego construir e instalar es un solo comando. Diría que es un poco como Homebrew, pero te da más libertad.

Además, EasyBuild admite muchos otros paquetes de software (científicos) que se pueden construir e instalar con un solo comando, por lo que vale la pena analizarlo.

Descargo de responsabilidad: soy parte del equipo de EasyBuild. Construir GCC (con gfortran incluido) debería funcionar en OS X, pero otras compilaciones pueden ser problemáticas. Estamos trabajando en ello, háganos saber si tiene problemas.


¿Has hecho pruebas en OS X? Cuando dices 'debería funcionar' ¿es por experiencia o expectativas?
Deer Hunter

@DeerHunter: Por experiencia, mi computadora portátil personal es una Mac que ejecuta OS X. La creación de GCC funciona, pero se sabe que EasyBuild tiene problemas con algunas otras versiones. Esperamos investigar eso pronto.
Kenneth Hoste

Votación positiva ... Resulta que he estado usando EASY_BUILD para empaquetar golosinas de pitón en RPM ...
Deer Hunter

@DeerHunter EasyBuild actualmente no tiene soporte para empaquetar cosas en RPM. ¿Quizás está confundiendo EasyBuild (que proporciona el comando 'eb'), con 'easy_install', la herramienta de instalación de Python que proporciona setuptools / disitutils?
Kenneth Hoste

Tienes razón; fallas aleatorias de memoria. Verificará EasyBuild, de todos modos. El embalaje está hecho por fpm...
Deer Hunter

0

Sugeriría Intel Fortran Composer en MacOS. Es bueno, actualizado y funciona. Una cosa negativa, no es gratis. Sin embargo, creo que hay una evaluación gratuita de 30 días.

Bajo Linux ofrecen una versión gratuita, no comercial.


Los usuarios de Linux también pueden instalar Solaris Studio. Está muy bien integrado (compiladores C / C ++ / Fortran). Dbxtool es muy útil y también lo es el analizador (por ejemplo, para detectar condiciones de carrera en programas abiertos).
stali
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.