Pregunta relacionada: Estado de Mac OS en Computación Científica y HPC

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

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

Comentarios

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

Respuesta

Elija su veneno. Recomiendo usar Homebrew. He probado todos estos métodos excepto «Fink» y «Otros métodos». Originalmente, prefiero d MacPorts cuando escribí esta respuesta. En los dos años transcurridos desde entonces, Homebrew ha crecido mucho como proyecto y ha demostrado ser más fácil de mantener que MacPorts, lo que puede requerir una gran cantidad de PATH piratería.

Instalación 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 apropiada de gfortran desde aquí . Los desarrolladores de R y los desarrolladores de SciPy recomiendan este método.

  • Ventajas : coincide con versiones de compiladores instalados con XCode o con Kenneth El instalador de Reitz ; es poco probable que interfiera con las actualizaciones del sistema operativo; coexiste muy bien con MacPorts (y probablemente con Fink y Homebrew) porque se instala en /usr/bin. No aplasta 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 precompilado y actualizado 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 de g77 y un compilador basado en f2c. Los desarrolladores de PETSc recomiendan este método en su FAQ .

  • Ventajas : con el comando correcto, instala en /usr/local; actualizado. No afecta a los compiladores del sistema existentes, ni al enfoque anterior. No interferirá con las actualizaciones del sistema operativo.
  • Desventajas : es necesario editar PATH. No hay una manera fácil de cambiar entre versiones. (Puede modificar la RUTA, eliminar la instalación del compilador o esquivarla). Aplastará otros métodos de instalación de compiladores en /usr/local porque los binarios del compilador se denominan simplemente «gcc», «g ++», etc. (sin número de versión y sin enlaces simbólicos).

Use MacPorts

MacPorts tiene varias versiones de compiladores disponibles para su uso.

  • Ventajas : se instala en /opt/local; port select se 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 para requerir un «software ecosys tem «. Los compiladores no incluyen símbolos de depuración, que pueden suponer un problema al utilizar un depurador o al instalar PETSc. ( Sean Farley propone algunas soluciones). También requiere cambiar PATH. Podría interferir con las instalaciones de Homebrew y Fink. (Consulte esta publicación sobre SuperUser ).

Use Homebrew

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

  • Ventajas : Administrador de paquetes fácil de usar; instala el mismo compilador Fortran que en «Instalar una versión que coincida con los compiladores del sistema». Solo instale lo que necesite (a diferencia de MacPorts). Podría instalar una pila GCC (4.7.0) más nueva usando 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 Homebrew al instalar otro software (que no sea Homebrew) en /usr/local para evitar estropear algo. Podría interferir con las instalaciones de MacPorts y Fink. (Consulta esta publicación sobre SuperUser ). Necesitas cambiar PATH. Las instalaciones podrían depender de las bibliotecas del sistema, lo que significa que las dependencias de los paquetes Homebrew podrían romperse en una actualización del sistema operativo. (Consulte este artículo ). No esperaría que haya dependencias de la biblioteca del sistema al instalar gfortran, pero podría haber tales dependencias al instalar otros paquetes de Homebrew.

Usa Fink

En teoría, puedes usar Fink para instalar gfortran. No lo he hecho lo usé, y no conozco a nadie que lo haya hecho (y esté dispuesto a decir algo positivo).

Otros métodos

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

Comentarios

  • 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 ' t incluir muchas de las bibliotecas que utilizo con regularidad. 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 un sistema así, pero necesita muchas más bibliotecas para ser realmente competitivo con MacPorts.
  • 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 puede llamar a " gfortran ".
  • Tengo fink ' s gfortran en mi caja 10.5, pero nunca la he puesto a prueba en serio. compilará cernlib y geant3, pero no he ' ejecutar ningún trabajo importante en ninguno de los dos últimamente.
  • Para Homebrew, gfortran es ahora 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
  • El enlace a Sean Farley ' s ya no funciona (en referencia a cómo hacer que los depuradores funcionen con las instalaciones de MacPorts). ¿Se puede volver a vincular esto?

Responder

EasyBuild ( http://hpcugent.github.com/easybuild ) te permite construir e instalar tu propio conjunto de compiladores GCC fácilmente.

Básicamente, le das una configuración sencilla (.eb) archivo que especifica lo que desea compilar (GCC + versión + conjunto de lenguajes para los que desea compiladores + …), y luego compilar e instalar es un solo comando. Yo diría que se parece un poco a Homebrew, pero te da más libertad.

Además, EasyBuild admite muchos otros paquetes de software (científicos) que pueden construirse e instalarse con un solo comando, por lo que Vale la pena investigarlo.

Descargo de responsabilidad: Soy parte del equipo de EasyBuild. La compilación de GCC (con gfortran incluido) debería funcionar en OS X, pero otras compilaciones pueden ser problemáticas. Estamos trabajando en ello, avísenos si tiene problemas.

Comentarios

  • ¿Ha realizado pruebas en OS X? digamos que ' debería funcionar ' ¿es por experiencia o expectativas?
  • @DeerHunter: por experiencia, mi computadora portátil personal es una Mac que ejecuta OS X. La compilación de GCC funciona, pero se sabe que EasyBuild tiene problemas con algunas otras compilaciones. Esperamos analizar eso pronto.
  • Votando a favor … Resulta que hemos estado usando EASY_BUILD para empaquetar elementos de Python en RPM …
  • @DeerHunter EasyBuild actualmente no ' no tiene soporte para empaquetar cosas en RPM. Tal vez usted ' está confundiendo EasyBuild (que proporciona el comando ' eb '), con ' easy_install ', la herramienta de instalación de Python proporcionada por setuptools / disitutils?
  • Tienes razón; memoria aleatoria fracasos. Verificará EasyBuild, de todos modos. El empaquetado se realiza con fpm

Respuesta

Sugeriría Intel Fortran Composer en MacOS. Es bueno, está 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.

Comentarios

  • 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).

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *