Pergunta relacionada: Estado do Mac OS em computação científica e HPC

Um número significativo de pacotes de software em ciência da computação são escritos em Fortran, e o Fortran não está indo embora. R O compilador Fortran também é necessário para construir outros pacotes de software (um exemplo notável é o SciPy ).

No entanto, o Mac OS X não inclui um Compilador Fortran. Como devo instalar um compilador Fortran em minha máquina?

Comentários

  • Não é apenas Fortran. Macs simplesmente não têm a alta qualidade suportada repositórios como o Debian, onde tudo simplesmente funciona. Instalar praticamente qualquer coisa complicada em um Mac é uma dor.

Resposta

Escolha seu veneno. Recomendo usar o Homebrew. Tentei todos esses métodos, exceto “Fink” e “Outros métodos”. Originalmente, prefiro d MacPorts quando escrevi esta resposta. Nos dois anos desde então, o Homebrew cresceu muito como projeto e provou ser mais sustentável do que MacPorts, o que pode exigir muito PATH hackeamento.

Instalação uma versão que corresponda aos compiladores do sistema

Se você deseja que a versão do gfortran corresponda às versões do gcc, g ++, etc. instaladas em sua máquina, baixe a versão apropriada do gfortran em aqui . Os desenvolvedores R e os desenvolvedores SciPy recomendam este método.

  • Vantagens : Corresponde a versões de compiladores instalados com XCode ou com Kenneth Instalador do Reitz ; improvável que interfira nas atualizações do SO; coexiste bem com MacPorts (e provavelmente com Fink e Homebrew) porque pode ser instalado em /usr/bin. Não substitui os compiladores existentes . Não é necessário editar PATH.
  • Desvantagens : A pilha do compilador será muito antiga. (GCC 4.2.1 é o compilador mais recente da Apple; foi lançado em 2007.) Instala em /usr/bin.

Instalar um binário pré-compilado e atualizado do HPC Mac OS X

HPC Mac OS X tem binários para os mais recentes lançamento do GCC (no momento da redação deste artigo, 4.8.0 (experimental)), bem como binários g77 e um compilador baseado em f2c. Os desenvolvedores do PETSc recomendam este método em seu FAQ .

  • Vantagens : Com o comando correto, instala em /usr/local; atualizado. Não supera os compiladores de sistema existentes ou a abordagem acima. Não interfere nas atualizações do sistema operacional.
  • Desvantagens : É necessário editar PATH. Não é uma maneira fácil de alternar entre as versões. (Você pode modificar o PATH, excluir a instalação do compilador ou errar em torno dele.) Irá destruir outros métodos de instalação de compiladores em /usr/local porque os binários do compilador são simplesmente nomeados “gcc”, “g ++”, etc. (sem um número de versão e sem links simbólicos).

Use MacPorts

MacPorts tem várias versões de compiladores disponíveis para uso.

  • Vantagens : instalações em /opt/local; port select pode ser usado para alternar entre as versões do compilador (incluindo compiladores de sistema). Não interfere nas atualizações do sistema operacional.
  • Desvantagens : instalação de portas tende para exigir todo um “ecossistema de software tem “. Compiladores não incluem símbolos de depuração, o que pode representar um problema ao usar um depurador ou instalar o PETSc. ( Sean Farley propõe algumas soluções alternativas.) Também requer alteração PATH. Pode interferir nas instalações do Homebrew e do Fink. (Veja esta postagem no SuperUser .)

Use Homebrew

Homebrew também pode ser usado para instalar um compilador Fortran.

  • Vantagens : Gerenciador de pacotes fácil de usar; instala o mesmo compilador Fortran de “Instalando uma versão que corresponda aos compiladores do sistema”. Instale apenas o que você precisa (em contraste com MacPorts). Pode instalar uma pilha GCC (4.7.0) mais recente usando o repositório alternativo homebrew-dupes.
  • Desvantagens : Herda todas as desvantagens de “Instalar uma versão que corresponda aos compiladores do sistema”.Pode ser necessário seguir o paradigma Homebrew ao instalar outro software (não Homebrew) em /usr/local para evitar bagunçar qualquer coisa. Pode interferir nas instalações de MacPorts e Fink. (Veja esta postagem no SuperUser .) É necessário alterar PATH. As instalações podem depender das bibliotecas do sistema, o que significa que as dependências dos pacotes Homebrew podem ser interrompidas em uma atualização do sistema operacional. (Veja este artigo .) Não esperaria que houvesse dependências de biblioteca do sistema ao instalar o gfortran, mas pode haver tais dependências ao instalar outros pacotes Homebrew.

Use o Fink

Em teoria, você pode usar o Fink para instalar o gfortran. Eu não usei e não conheço ninguém que tenha (e estivesse disposto a dizer algo positivo).

Outros métodos

Outros binários e links estão listados no GFortran wiki . Alguns dos links já estão listados acima. Os métodos de instalação restantes podem ou não conflitar com os descritos acima; use por sua própria conta e risco.

Comentários

  • Houve um tempo em que o Fink era o gerenciador de pacotes preferido em relação aos MacPorts. Parei de usá-lo anos atrás porque a pilha era antiga e não era mantida e não ' t inclui muitas das bibliotecas que usei regularmente. Com quase todos os métodos aqui você acaba com algumas coisas gerenciadas pelo gerenciador de pacotes e algumas coisas que você rola manualmente. Homebrew é melhor com esse sistema, mas ele precisa de muito mais bibliotecas para ser realmente competitivo com MacPorts.
  • Você também pode usar projetos como Sage (sagemath.org) ou Qsnake ( qsnake.com ), que fornecem seu próprio compilador Fortran e permitem que você trabalhe no " ambiente ", onde você pode simplesmente chamar " gfortran ".
  • Eu tenho fink ' s gfortran na minha caixa 10.5, mas nunca a coloquei em um teste realmente sério. Ele irá compilar o cernlib e o geant3, mas eu não ' não executei nenhum grande trabalho nos dois recentemente.
  • Para o Homebrew, o gfortran é agora instalado com 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
  • O link para Sean Farley ' s não está mais funcionando (em referência a como fazer com que os depuradores funcionem com as instalações do MacPorts). Isso pode ser vinculado novamente?

Resposta

EasyBuild ( http://hpcugent.github.com/easybuild ) permite que você construa e instale seu próprio conjunto de compiladores GCC facilmente.

Basicamente, você fornece um easyconfig simples (.eb) arquivo que especifica o que você deseja construir (GCC + versão + conjunto de linguagens para as quais deseja que os compiladores + …), e então construir e instalar é um único comando. Eu diria que é um pouco como o Homebrew, mas dá a você mais liberdade.

Além disso, o EasyBuild suporta muitos outros pacotes de software (científicos) que podem ser construídos e instalados com um único comando, Vale a pena dar uma olhada.

Isenção de responsabilidade: faço parte da equipe EasyBuild. Compilar o GCC (com gfortran incluído) deve funcionar no OS X, mas outras compilações podem ser problemáticas. Estamos trabalhando nisso. Avise-nos se tiver problemas.

Comentários

  • Você terminou de testar no OS X? Quando diga ' deve funcionar ' é por experiência ou expectativas?
  • @DeerHunter: Por experiência, meu laptop pessoal é um Mac executando o OS X. Compilar o GCC funciona, mas o EasyBuild tem problemas com algumas outras compilações. Esperamos ver isso em breve.
  • Votos positivos … Acontece que tenho usado o EASY_BUILD para empacote python goodies em RPMs …
  • @DeerHunter EasyBuild atualmente não ' suporte para empacotar coisas em RPMs. Talvez você ' está confundindo EasyBuild (que fornece o comando ' eb '), com ' easy_install ', a ferramenta de instalação do Python fornecida por setuptools / disitutils?
  • Você está certo; memória aleatória falhas. Vou verificar o EasyBuild, de qualquer maneira. O empacotamento é feito por fpm

Resposta

Eu sugeriria Intel Fortran Composer no MacOS. É bom, atualizado e funciona. Uma coisa negativa, não é grátis. Mas acho que há uma avaliação gratuita de 30 dias.

No Linux, eles oferecem uma versão gratuita e não comercial.

Comentários

  • Os usuários do Linux também podem instalar o Solaris Studio. Está muito bem integrado (compiladores C / C ++ / Fortran). Dbxtool é muito útil, assim como o analisador (por exemplo, para detectar condições de corrida em programas openmp).

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *