Kapcsolódó kérdés: A Mac OS állapota a tudományos számítástechnikában és a HPC-ben

A számítástechnika jelentős számú szoftvercsomagját Fortranban írják, és a Fortran nem tűnik el. A Fortran fordítónak további szoftvercsomagok készítésére is szükség van (az egyik figyelemre méltó példa: SciPy ).

A Mac OS X azonban nem tartalmaz Fortran-fordító. Hogyan kell telepíteni a Fortran-fordítót a gépemre?

Megjegyzések

  • Ez nem csak a Fortran. A Mac-ek egyszerűen nem támogatják a kiváló minőséget olyan tárolók, mint a Debian, ahol minden csak működik. Nagyjából minden bonyolult dolog telepítése Mac-re fájdalom.

Válasz

Válassza ki a mérget. Javaslom a Homebrew használatát. Mindezeket a módszereket kipróbáltam, a “Fink” és az “Egyéb módszerek” kivételével. Eredetileg inkább d MacPorts, amikor ezt a választ írtam. Az azóta eltelt két év alatt a Homebrew projektként sokat fejlődött, és karbantarthatóbbnak bizonyult, mint a MacPorts, ami sok PATH hackelést igényelhet.

Telepítés a rendszer fordítóinak megfelelő verzió

Ha azt szeretné, hogy a gfortran verziója megegyezzen a gépére telepített gcc, g ++ stb. verzióival, töltse le a gfortran megfelelő verzióját a itt . A R fejlesztők és a SciPy fejlesztők ezt a módszert javasolják.

  • Előnyök : Egyezik az XCode-tal vagy Kenneth-sel telepített fordítóprogramok verzióival Reitz telepítője ; nem valószínű, hogy beleavatkozik az operációs rendszer frissítéseibe; a MacPortokkal (és valószínűleg a Finkkel és a Homebrew-val) is szépen együtt él, mert /usr/bin rendszerre telepíti. Nem törli a meglévő fordítókat . Nem kell szerkesztenie PATH.
  • Hátrányok : A fordítóverem valóban régi lesz. (A GCC 4.2.1 a legújabb Apple fordító; 2007-ben jelent meg.) Telepíti a következőt: /usr/bin.

Előfordított, naprakész bináris fájl telepítése a HPC Mac OS X rendszerről

A HPC Mac OS X bináris fájlokat tartalmaz a legújabb verzióhoz a GCC (az írás idején 4.8.0 (kísérleti)), valamint a g77 bináris fájlok és egy f2c alapú fordító kiadása. A PETSc fejlesztői ezt a módszert a GYIK .

  • Előnyök : A megfelelő paranccsal telepíthető a /usr/local fájlban; naprakész. Nem tolja el a meglévő rendszerfordítókat, vagy a fenti megközelítést. Nem zavarja az operációs rendszer frissítéseit.
  • Hátrányok : Szerkeszteni kell a PATH. Nincs egyszerű mód a verziók közötti váltásra. (Módosíthatja a PATH-t, törölheti a fordító telepítését vagy kludge-ot körülötte.) Meg fogja akadályozni a fordító egyéb telepítési módszereit a /usr/local, mert a fordító bináris fájljainak neve egyszerűen „gcc”, „g ++” stb. (verziószám és szimbólum nélkül).

MacPorts használata

A MacPorts számos fordítói verzióval rendelkezik.

  • Előnyök : Telepítések a /opt/local; port select segítségével válthat a fordítói verziók között (beleértve a rendszer-fordítókat is). Nem fogja zavarni az operációs rendszer frissítéseit.
  • Hátrányok : A portok telepítése hajlamos hogy egy teljes “szoftveres ecosys-t igényeljen tem “. A fordítók nem tartalmaznak hibakeresési szimbólumokat, amelyek problémát okozhatnak a hibakereső használata vagy a PETSc telepítése során. ( Sean Farley javasol néhány megoldást.) Szintén meg kell változtatnia a PATH. Megzavarhatja a Homebrew és a Fink telepítését. (Lásd ezt a bejegyzést a SuperUser-en .)

A Homebrew használata

Homebrew szintén használható a Fortran fordító telepítéséhez.

  • Előnyök : Könnyen használható csomagkezelő; ugyanazt a Fortran fordítót telepíti, mint a “A rendszer fordítóinak megfelelő verzió telepítése” részben. Csak azt telepítse, amire szüksége van (ellentétben a MacPortokkal). Telepíthetne egy újabb GCC (4.7.0) verem az alternatív tárház homebrew-dupes használatával.
  • Hátrányok : Minden hátrányt megörökít “A rendszer fordítóinak megfelelő verzió telepítése” következtében.Más (nem Homebrew) szoftverek /usr/local rendszerre történő telepítésekor szükség lehet a Homebrew paradigma betartására, hogy elkerülje a bármi elrontását. Megzavarhatja a MacPorts és a Fink telepítéseit. (Lásd ezt a bejegyzést a SuperUser-en .) Meg kell változtatni PATH. A telepítések a rendszerkönyvtáraktól függhetnek, vagyis a Homebrew csomagok függőségei megszakadhatnak az operációs rendszer frissítésekor. (Lásd ezt a cikket .) Nem számítanék arra, hogy a gfortran telepítésekor lesznek rendszerkönyvtári függőségek, de más Homebrew csomagok telepítésekor lehetnek ilyen függőségek.

A Fink használata

Elméletileg a Fink segítségével telepítheti a gfortran alkalmazást. használta, és nem ismerek senkit, akinek van (és hajlandó volt valami pozitívat mondani).

Egyéb módszerek

Egyéb bináris fájlok és linkek a GFortran wiki . Néhány link már fent fel van sorolva. A fennmaradó telepítési módszerek ütközhetnek vagy nem ütközhetnek a fentiekben leírtakkal; használja saját felelősségére.

Megjegyzések

  • Volt idő, amikor a Fink volt az előnyben részesített csomagkezelő a MacPorts-hoz képest. Évekkel ezelőtt abbahagytam a használatát, mert a verem régi volt, nem volt karbantartva, és nem ' nem tartalmaz sok, általam rendszeresen használt könyvtárat. Körülbelül minden módszerrel itt végül a csomagkezelő által kezelt dolgokkal és néhány kézzel dobott dologgal végez. A Homebrew jobb ilyen rendszerrel, de sokkal több könyvtárra van szüksége ahhoz, hogy valóban versenyképes legyen a MacPorts-szal.
  • Használhat olyan projekteket is, mint a Sage (sagemath.org) vagy a Qsnake ( qsnake.com ), amelyek saját Fortran-fordítójukat szállítják, és lehetővé teszik, hogy " környezetben ", ahol egyszerűen hívhatja a következőt: " gfortran ".
  • Van fink ' s gfortran a 10.5-es dobozomon, de soha nem tettem igazán komoly próbára. összeállítja a cernlib-et és a geant3-ot, de az utóbbi időben egyik ' -et sem futtatom.
  • A Homebrew esetében a gfortran most telepítve van a következővel: 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
  • A link Sean Farley-hoz ' s Wiki oldal már nem működik (utalva arra, hogyan lehet a hibakeresőket a MacPorts telepítéseivel működtetni). Ezt újra lehet kapcsolni?

Válasz

EasyBuild ( A http://hpcugent.github.com/easybuild ) lehetővé teszi a saját GCC fordítóinak egyszerű készítését és telepítését.

Alapvetően egy egyszerű easyconfig-t (.eb) ad meg neki. fájl, amely meghatározza, hogy mit akar építeni (GCC + verzió + nyelvkészlet, amelyhez fordítókat akarsz + …), majd az elkészítés és telepítés egyetlen parancs. Azt mondanám, hogy kicsit hasonlít a Homebrew-ra, de nagyobb szabadságot ad.

Az EasyBuild sok más (tudományos) szoftvercsomagot is támogat, amelyek egyetlen paranccsal felépíthetők és telepíthetők, tehát Érdemes utánanézni.

Jogi nyilatkozat: Az EasyBuild csapat tagja vagyok. A GCC kiépítésének (a gfortrannal együtt) működnie kell az OS X rendszeren, de más építések problémát okozhatnak. Dolgozunk rajta, tudassa velünk, ha problémába ütközik.

Megjegyzések

  • Tesztelt már OS X rendszeren? mondjuk ' működnie kell ' tapasztalatból vagy elvárásokból származik?
  • @DeerHunter: Tapasztalatból a személyes laptopom egy Mac, OS X operációs rendszert futtat. A GCC építése működik, de az EasyBuild-ról ismert, hogy problémái vannak más verziókkal. Reméljük, hogy ezt hamarosan megvizsgáljuk.
  • Szavazás … Kiderült, hogy az EASY_BUILD használatával csomagolja a python finomságait RPM-ekbe …
  • A @DeerHunter EasyBuild jelenleg nem rendelkezik ' támogatással a dolgok RPM-be csomagolásához. Talán >

ismét összekeveri az EasyBuild-et (amely a ' eb ' parancsot adja), a ' easy_install ', a Python telepítőeszköze, amelyet a setuptools / disitutils szolgáltat?

  • Igazad van; véletlenszerű memória kudarcok. Amúgy megnézem az EasyBuild-et. A csomagolást: fpm
  • Válasz

    Javaslom az Intel Fortran Composert MacOS-on. Ez jó, naprakész és működik. Egy negatív dolog, hogy nem ingyenes. Úgy gondolom, hogy van egy 30 napos ingyenes értékelés.

    Linux alatt ingyenes, nem kereskedelmi verziót kínálnak.

    Megjegyzések

    • A Linux-felhasználók a Solaris Studiót is telepíthetik. Nagyon jól integrált (C / C ++ / Fortran fordítók). A Dbxtool nagyon hasznos, és az analizátor is (például az OpenMP programok versenyfeltételeinek detektálására).

    Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük