Întrebare asociată: Starea sistemului de operare Mac în calculul științific și HPC

Un număr semnificativ de pachete software în știința calculelor sunt scrise în Fortran, iar Fortran nu dispare. A Compilatorul Fortran este, de asemenea, necesar pentru a construi alte pachete software (un exemplu notabil fiind SciPy ).

Cu toate acestea, Mac OS X nu include un Compilator Fortran. Cum ar trebui să instalez un compilator Fortran pe computerul meu?

Comentarii

  • Nu este doar Fortran. Mac-urile pur și simplu nu au suport de înaltă calitate arhive ca Debian, în care totul funcționează. Instalarea practic a oricărui lucru complicat pe un Mac este dificilă.

Răspuns

Alegeți-vă otravă. Vă recomand să utilizați Homebrew. Am încercat toate aceste metode, cu excepția „Fink” și „Alte metode”. Inițial, prefer d MacPorts când am scris acest răspuns. În cei doi ani de atunci, Homebrew a crescut mult ca proiect și s-a dovedit mai ușor de întreținut decât MacPorts, care poate necesita o mulțime de PATH hacking.

Instalare o versiune care se potrivește cu compilatoarele de sistem

Dacă doriți ca versiunea gfortran să se potrivească cu versiunile gcc, g ++ etc. instalate pe computerul dvs., descărcați versiunea corespunzătoare a gfortran din aici . Dezvoltatorii R și Dezvoltatorii SciPy recomandă această metodă.

  • Avantaje : potriveste versiunile de compilatoare instalate cu XCode sau cu Kenneth Programul de instalare Reitz ; este puțin probabil să interfereze cu actualizările sistemului de operare; coexistă frumos cu MacPorts (și probabil cu Fink și Homebrew) deoarece se instalează pe /usr/bin. Nu blochează compilatoarele existente . Nu trebuie să editați PATH.
  • Dezavantaje : Stiva de compilator va fi cu adevărat veche. (GCC 4.2.1 este cel mai recent compilator Apple; a fost lansat în 2007.) Se instalează pe /usr/bin.

Instalarea unui binar precompilat, actualizat de la HPC Mac OS X

HPC Mac OS X are binare pentru cele mai recente lansarea GCC (la momentul scrierii acestui articol, 4.8.0 (experimental)), precum și a binarelor g77 și a unui compilator bazat pe f2c. Dezvoltatorii PETSc recomandă această metodă pe FAQ .

  • Avantaje : Cu comanda potrivită, instalează în /usr/local; actualizat. Nu blochează compilatoarele de sistem existente sau abordarea de mai sus. Nu va interfera cu actualizările sistemului de operare.
  • Dezavantaje : Trebuie să editați PATH. Nicio modalitate ușoară de a comuta între versiuni. (Puteți modifica PATH-ul, ștergeți instalarea compilatorului sau vă puteți întoarce în jurul acestuia.) Va înfunda alte metode de instalare a compilatoarelor în /usr/local deoarece binele compilatorului sunt pur și simplu denumite „gcc”, „g ++” etc. (fără un număr de versiune și fără niciun link simbolic).

Utilizați MacPorts

MacPorts are o serie de versiuni de compilatoare disponibile pentru utilizare.

  • Avantaje : Instalările în /opt/local; port select pot fi utilizate pentru a comuta între versiunile compilatorului (inclusiv compilatoare de sistem). Nu va interfera cu actualizările sistemului de operare.
  • Dezavantaje : instalarea porturilor tinde pentru a solicita un întreg „software ecosys tem „. Compilatoarele nu includ simboluri de depanare, care pot pune probleme atunci când se utilizează un depanator sau se instalează PETSc. ( Sean Farley propune unele soluții.) De asemenea, necesită schimbarea PATH. Ar putea interfera cu instalările Homebrew și Fink. (Consultați această postare pe SuperUser .)

Utilizați Homebrew

Homebrew poate fi, de asemenea, utilizat pentru a instala un compilator Fortran.

  • Avantaje : Manager de pachete ușor de utilizat; instalează același compilator Fortran ca în „Instalarea unei versiuni care se potrivește cu compilatoarele de sistem”. Instalați doar ceea ce aveți nevoie (spre deosebire de MacPorts). S-ar putea instala o stivă GCC (4.7.0) mai recentă utilizând depozitul alternativ homebrew-dupes.
  • Dezavantaje : Moștenește toate dezavantajele din „Instalarea unei versiuni care se potrivește cu compilatoarele de sistem”.Poate fi necesar să urmați paradigma Homebrew atunci când instalați alte software-uri (non-Homebrew) pe /usr/local pentru a evita deranjarea a ceva. S-ar putea interfera cu instalările MacPorts și Fink. (Consultați această postare pe SuperUser .) Trebuie să modificați PATH. Instalările ar putea depinde de bibliotecile de sistem, ceea ce înseamnă că dependențele pentru pachetele Homebrew se pot rupe la o actualizare a sistemului de operare. (Consultați acest articol .) Nu m-aș aștepta să existe dependențe de bibliotecă de sistem atunci când instalați gfortran, dar ar putea exista astfel de dependențe atunci când instalați alte pachete Homebrew.

Utilizați Fink

În teorie, puteți utiliza Fink pentru a instala gfortran. Nu am l-am folosit și nu cunosc pe nimeni care să aibă (și a fost dispus să spună ceva pozitiv).

Alte metode

Alte binare și linkuri sunt listate pe GFortran wiki . Unele dintre link-uri sunt deja enumerate mai sus. Metodele de instalare rămase pot sau nu să intre în conflict cu cele descrise mai sus; utilizați pe propriul risc.

Comentarii

  • A existat un moment în care Fink era managerul de pachete preferat față de MacPorts. Am încetat să-l mai folosesc cu ani în urmă, deoarece stiva era veche și nu era întreținută și nu ' t include multe dintre bibliotecile pe care le-am folosit în mod regulat. Cu aproximativ fiecare metodă aici ajungi cu câteva lucruri gestionate de managerul de pachete și cu unele lucruri pe care le rulezi manual. Homebrew este mai bun cu un astfel de sistem, dar are nevoie de mult mai multe biblioteci pentru a fi cu adevărat competitiv cu MacPorts.
  • Puteți utiliza și proiecte precum Sage (sagemath.org) sau Qsnake ( qsnake.com ), care livrează propriul compilator Fortran și vă permit să lucrați în " mediu ", unde puteți apela doar " gfortran ".
  • Am fink ' s gfortran pe cutia mea 10.5, dar nu l-am pus niciodată la un test foarte serios. Va compila cernlib și geant3, dar nu am ' executat niciun job mare în ultimul timp.
  • Pentru Homebrew, gfortran este acum instalat cu 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
  • Link-ul către Sean Farley ' s nu mai funcționează (referindu-se la modul de a face ca depanatorii să funcționeze cu instalările MacPorts). Poate fi reluat acest lucru?

Răspuns

EasyBuild ( http://hpcugent.github.com/easybuild ) vă permite să creați și să instalați cu ușurință propriul set de compilatoare GCC.

Practic, îi oferiți un simplu easyconfig (.eb) fișier care specifică ce doriți să creați (versiunea GCC + + set de limbi pentru care doriți compilatoare + …), iar apoi construirea și instalarea este o singură comandă. Aș spune că este cam ca Homebrew, dar îți oferă mai multă libertate.

De asemenea, EasyBuild acceptă multe alte pachete software (științifice) care pot fi construite și instalate cu o singură comandă, deci Merită să analizăm.

Disclaimer: Fac parte din echipa EasyBuild. Clădirea GCC (cu gfortran inclus) ar trebui să funcționeze pe OS X, dar alte versiuni pot fi supărătoare. „Lucrăm la asta, anunțați-ne dacă aveți probleme.

Comentarii

  • Ați terminat testarea pe OS X? Când spune ' ar trebui să funcționeze ' este din experiență sau din așteptări?
  • @DeerHunter: Din experiență, laptopul meu personal este un Mac, care rulează OS X. Clădirea GCC funcționează, dar se știe că EasyBuild are probleme cu alte versiuni. Sperăm să analizăm acest lucru în curând.
  • Upvoting … Se pare că au folosit EASY_BUILD pentru pachetul de bunătăți python în RPM-uri …
  • În prezent, @DeerHunter EasyBuild nu are ' suport pentru ambalarea lucrurilor în RPM-uri. Poate că ' re confuză EasyBuild (care oferă comanda ' eb '), cu ' easy_install ', instrumentul de instalare Python furnizat de setuptools / disitutils?
  • Ai dreptate; memorie aleatorie eșecuri. Oricum va verifica EasyBuild. Ambalarea se face prin fpm

Răspuns

Aș sugera Intel Fortran Composer pe MacOS. Este „bun, actualizat și funcționează. Un lucru negativ, nu este gratuit. Cred că există o evaluare gratuită de 30 de zile.

Sub Linux oferă o versiune gratuită, necomercială.

Comentarii

  • Utilizatorii Linux pot instala, de asemenea, Solaris Studio. Este foarte bine integrat (compilatoare C / C ++ / Fortran). Dbxtool este foarte util, la fel și analizatorul (de exemplu, pentru detectarea condițiilor de cursă în programele openmp).

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *