Verwandte Frage: Status des Mac OS in Scientific Computing und HPC

Eine bedeutende Anzahl von Softwarepaketen in Computational Science ist in Fortran geschrieben, und Fortran verschwindet nicht. A. Der Fortran-Compiler muss auch andere Softwarepakete erstellen (ein bemerkenswertes Beispiel ist SciPy ).

Mac OS X enthält jedoch kein Fortran-Compiler. Wie soll ich einen Fortran-Compiler auf meinem Computer installieren?

Kommentare

  • Es ist nicht nur Fortran. Macs haben einfach keine Unterstützung für die hohe Qualität Repositories wie Debian, in denen einfach alles funktioniert. Die Installation so ziemlich aller komplizierten Dinge auf einem Mac ist mühsam.

Antwort

Wählen Sie Ihr Gift. Ich empfehle die Verwendung von Homebrew. Ich habe alle diese Methoden außer „Fink“ und „Andere Methoden“ ausprobiert. Ursprünglich bevorzuge ich d MacPorts, als ich diese Antwort schrieb. In den zwei Jahren seitdem ist Homebrew als Projekt stark gewachsen und hat sich als wartbarer erwiesen als MacPorts, was viel PATH Hacking erfordern kann.

Installation Eine Version, die mit System-Compilern übereinstimmt.

Wenn die Version von gfortran mit den auf Ihrem Computer installierten Versionen von gcc, g ++ usw. übereinstimmen soll, laden Sie die entsprechende Version von gfortran von hier . Die Entwickler R und SciPy-Entwickler empfehlen diese Methode.

  • Vorteile : Entspricht Versionen von Compilern, die mit XCode oder mit Kenneth installiert wurden Reitz Installationsprogramm ; es ist unwahrscheinlich, dass es Betriebssystem-Upgrades stört; es existiert gut mit MacPorts (und wahrscheinlich Fink und Homebrew) zusammen, da es auf /usr/bin installiert wird. Verstopft vorhandene Compiler nicht . PATH muss nicht bearbeitet werden.
  • Nachteile : Der Compiler-Stack ist sehr alt. (GCC 4.2.1 ist der neueste Apple-Compiler. Er wurde 2007 veröffentlicht.) Wird auf /usr/bin installiert.

Installieren einer vorkompilierten, aktuellen Binärdatei von HPC Mac OS X

HPC Mac OS X verfügt über die neuesten Binärdateien Veröffentlichung von GCC (zum Zeitpunkt dieses Schreibens 4.8.0 (experimentell)) sowie von g77-Binärdateien und einem f2c-basierten Compiler. Die PETSc-Entwickler empfehlen diese Methode auf ihrer FAQ .

  • Vorteile : Wird mit dem richtigen Befehl installiert in /usr/local; aktuell. Überlastet vorhandene System-Compiler oder den oben beschriebenen Ansatz nicht. Beeinträchtigt Betriebssystem-Upgrades nicht.
  • Nachteile : . Keine einfache Möglichkeit, zwischen Versionen zu wechseln. (Sie können den PATH ändern, die Compiler-Installation löschen oder um ihn herum klumpen.) Wird andere Methoden zum Installieren von Compilern in /usr/local weil Compiler-Binärdateien einfach „gcc“, „g ++“ usw. heißen (ohne Versionsnummer und ohne Symlinks).

MacPorts verwenden

MacPorts verfügt über eine Reihe von Compilerversionen.

  • Vorteile : Installiert in /opt/local; port select kann zum Wechseln zwischen Compilerversionen verwendet werden (einschließlich System-Compiler). Beeinträchtigt keine Betriebssystem-Upgrades.
  • Nachteile : Die Installation von Ports ist tendenziell eine ganze „Software ecosys“ benötigen tem „. Compiler enthalten keine Debugging-Symbole, die bei Verwendung eines Debuggers oder bei der Installation von PETSc ein Problem darstellen können. ( Sean Farley schlägt einige Problemumgehungen vor.) Außerdem müssen PATH. Kann die Installation von Homebrew und Fink beeinträchtigen. (Siehe diesen Beitrag auf SuperUser .)

Homebrew verwenden

Homebrew kann auch zum Installieren eines Fortran-Compilers verwendet werden.

  • Vorteile : Einfach zu verwendender Paketmanager; installiert denselben Fortran-Compiler wie unter „Installieren einer Version, die System-Compilern entspricht“. Installieren Sie nur das, was Sie benötigen (im Gegensatz zu MacPorts). Sie können einen neueren GCC-Stack (4.7.0) mithilfe der alternativen Repository-Homebrew-Dupes installieren.
  • Nachteile : Erbt alle Nachteile von „Installieren einer Version, die mit Systemcompilern übereinstimmt“.Möglicherweise muss das Homebrew-Paradigma befolgt werden, wenn andere (Nicht-Homebrew-) Software auf /usr/local installiert wird, um Fehler zu vermeiden. Könnte die Installation von MacPorts und Fink beeinträchtigen. (Siehe in diesem Beitrag auf SuperUser .) PATH muss geändert werden. Installationen können von Systembibliotheken abhängen, was bedeutet, dass Abhängigkeiten für Homebrew-Pakete bei einem Betriebssystem-Upgrade unterbrochen werden können. (Siehe in diesem Artikel .) Ich würde nicht erwarten, dass bei der Installation von gfortran Systembibliotheksabhängigkeiten bestehen, aber bei der Installation anderer Homebrew-Pakete können solche Abhängigkeiten auftreten.

Fink verwenden

Theoretisch können Sie Fink verwenden, um gfortran zu installieren. Ich habe „t Ich habe es verwendet, und ich kenne niemanden, der es hat (und bereit war, etwas Positives zu sagen).

Andere Methoden

Andere Binärdateien und Links sind in der GFortran-Wiki . Einige der Links sind bereits oben aufgeführt. Die verbleibenden Installationsmethoden können mit den oben beschriebenen in Konflikt stehen oder nicht. Die Verwendung erfolgt auf eigenes Risiko.

Kommentare

  • Es gab eine Zeit, in der Fink der bevorzugte Paketmanager gegenüber MacPorts war. Ich habe ihn vor Jahren nicht mehr verwendet, weil der Stapel alt und nicht gewartet war und keine ' enthält nicht viele der Bibliotheken, die ich regelmäßig verwendet habe. Mit ungefähr jeder Methode Hier haben Sie einige Dinge, die vom Paketmanager verwaltet werden, und einige Dinge, die Sie von Hand rollen. Homebrew ist mit einem solchen System besser, benötigt jedoch weitaus mehr Bibliotheken, um mit MacPorts wirklich wettbewerbsfähig zu sein.
  • Sie können auch Projekte wie Sage (sagemath.org) oder Qsnake ( qsnake.com ), die ihren eigenen Fortran-Compiler ausliefern und es Ihnen ermöglichen, in einer " -Umgebung ", wo Sie einfach " gfortran " aufrufen können.
  • Ich habe fink ' s gfortran auf meiner 10.5 Box, habe es aber noch nie ernsthaft auf die Probe gestellt. Es wird cernlib und geant3 kompilieren, aber ich habe ' in letzter Zeit keine großen Jobs ausgeführt.
  • Für Homebrew ist gfortran Jetzt installiert mit 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
  • Der Link zu Sean Farley ' funktioniert nicht mehr (in Bezug darauf, wie Debugger mit MacPorts-Installationen arbeiten können). Kann dies erneut verknüpft werden?

Antwort

EasyBuild ( Mit http://hpcugent.github.com/easybuild ) können Sie ganz einfach Ihre eigenen GCC-Compiler erstellen und installieren.

Grundsätzlich geben Sie ihm eine einfache easyconfig (.eb). Datei, die angibt, was Sie erstellen möchten (GCC + Version + Satz von Sprachen, für die Sie Compiler benötigen + …), und anschließend erstellen und installieren ist ein einziger Befehl. Ich würde es ein bisschen wie Homebrew sagen, aber es gibt Ihnen mehr Freiheit.

Außerdem unterstützt EasyBuild viele andere (wissenschaftliche) Softwarepakete, die mit einem einzigen Befehl erstellt und installiert werden können Es lohnt sich, einen Blick darauf zu werfen.

Haftungsausschluss: Ich bin Teil des EasyBuild-Teams. Das Erstellen von GCC (einschließlich Gfortran) sollte unter OS X funktionieren, andere Builds können jedoch problematisch sein. Wir arbeiten daran. Lassen Sie uns wissen, wenn Sie auf Probleme stoßen.

Kommentare

  • Haben Sie Tests unter OS X durchgeführt? Sagen Sie ' sollte funktionieren ' ist es aus Erfahrung oder Erwartungen?
  • @DeerHunter: Aus Erfahrung mein persönlicher Laptop ist ein Mac, auf dem OS X ausgeführt wird. Das Erstellen von GCC funktioniert, aber EasyBuild hat bekanntermaßen Probleme mit einigen anderen Builds. Wir hoffen, dies bald zu prüfen.
  • Upvoting … Es stellte sich heraus, dass EASY_BUILD verwendet wurde, um Python-Goodies in RPMs packen …
  • @DeerHunter EasyBuild unterstützt derzeit ' nicht beim Packen von Inhalten in RPMs. Vielleicht haben Sie ' verwirrt EasyBuild (das den Befehl ' eb ') mit ' easy_install ', das Python-Installationstool, das von setuptools / disitutils bereitgestellt wird?
  • Sie haben Recht, zufälliger Speicher Ausfälle. Werde trotzdem EasyBuild ausprobieren. Das Packen erfolgt durch fpm

Antwort

Ich würde Intel Fortran Composer unter MacOS vorschlagen. Es ist gut, aktuell und funktioniert. Eine negative Sache, es ist nicht kostenlos. Ich denke, es gibt eine 30-tägige kostenlose Evaluierung.

Unter Linux bieten sie eine kostenlose, nicht kommerzielle Version an.

Kommentare

  • Linux-Benutzer können auch Solaris Studio installieren. Es ist sehr gut integriert (C / C ++ / Fortran-Compiler). Dbxtool ist sehr nützlich, ebenso wie der Analysator (z. B. zum Erkennen von Rennbedingungen in openmp-Programmen).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.