Installation von fpm
Inhalt
Installation von fpm¶
Diese Anleitung erklärt die Installation vom Fortran-Paketmanager (fpm) auf verschiedenen Plattformen.
Program herunterladen¶
Für macOS, Linux und Windows (alles auf x86-64) sind Binärdateien verfügbar, die für jede Version von fpm verfügbar sind, sowie die neueste (Bleeding Edge) Version, die aktuellste Version des fpm-Main-Branches speichert.
Gehe zu fpm Releases um alle verfügbaren Releases zu sehen. Die herunterladbaren Dateien sind unter Assets in jedem Release-Abschnitt verfügbar. Klick auf den entsprechenden Link, der dem gewünschten Betriebssystem entspricht. Zum Beispiel, um ein fpm-Binary für macOS herunterzuladen, klicke auf den Link, der macos in seinem Namen enthält. Nach dem Herunterladen muss das heruntergeladene Programm ausführbar gemacht werden. Auf Linux und macOS kann dies folgendermaßen erreicht werden
chmod +x fpm-0.5.0-linux-x86_64
Optional, stelle das Binary in einem Verzeichnis, das global zugänglich ist (z.B. in der PATH
-Variable auf Linux und macOS). Um das Binary einfacher verwendbar zu machen kann es auch in fpm umbenannt werden.
Für Windows sind sowohl ein selbstverständliches Binary als auch ein Windows-Installer für fpm verfügbar.
Bemerkung
Links, die mit .sha256
enden, stellen die kryptographische Hashes dar, um zu verifizieren, ob die Herunterladen des Binaries erfolgreich war. Um die Integrität des heruntergeladenen Binaries zu verifizieren kann die Prüfsumme lokal berechnet und mit der im Release angegebenen Prüfsumme verglichen werden
❯ openssl sha256 -r fpm-0.5.0-linux-x86_64
387782f29b19eb6fbf14dd5cef76907a4c9cb6d20726d5508a78225ccd131ca8 *fpm-0.5.0-linux-x86_64
❯ cat fpm-0.5.0-linux-x86_64.sha256
387782f29b19eb6fbf14dd5cef76907a4c9cb6d20726d5508a78225ccd131ca8 fpm-0.5.0-linux-x86_64
Wenn die Prüfsummen nicht übereinstimmen, war die Herunterladen des Binaries nicht erfolgreich. In diesem Fall kann es erneut versucht werden, die Binaries herunterzuladen und zu verifizieren, dass die Prüfsummen übereinstimmen.
MSYS2 Paketverwaltung¶
Das MSYS2 Projekt bietet ein Paketverwaltungs- System und macht viele allgemeine Unix-Tools für Windows verfügbar.
Bemerkung
Um fpm zu installieren, kann der msys2-x86_64-YYYYMMDD.exe
-Installer von der MSYS2-Webseite herunter und ausgeführt werden. MSYS2 wird einige neue Desktop-Verknüpfungen erstellen, wie MSYS terminal, MinGW64 terminal und UCRT64 terminal (mehr Informationen über MSYS2-Terminals sind hier verfügbar).
Für die UCRT64, MinGW64 oder MinGW32-Terminal wird fpm unterstützt.
Öffne ein neues Terminal und aktualisiere die Installation mit
pacman -Syu
Eventuell muss MSYS2 und pacman
zuerst aktualisiert, das Terminal neu startet und den obige Befehl erneut ausführt werden, um die installierten Pakete zu aktualisieren.
Wird das MinGW64 terminal verwendet, kann die benötigten Software mit installiert werden
pacman -S git mingw-w64-x86_64-gcc-fortran mingw-w64-x86_64-fpm
Tipp
Sowohl git als auch gfortran müssen nicht als Abhängigkeiten für die Funktionalität von fpm installiert werden. Wenn git und gfortran von außenhalb bereitstellt werden, werden diese automatisch gefunden.
Homebrew Paketverwaltung¶
Der Fortran-Paketmanager (fpm) ist für das homebrew Paketverwaltungs-System auf MacOS von einem zusätzlichen Tap verfügbar. Um fpm via brew zu installieren, füge die neue Tap hinzu und installiere es mit
brew tap fortran-lang/homebrew-fortran
brew install fpm
Komilierte Distributionen sind für MacOS 11 (Catalina) und 12 (Big Sur) für x86_64-Architekturen verfügbar. Für andere Plattformen wird fpm automatisch vom Quellcode erstellt.
Nach diesen Schritten sollte fpm verfügbar und funktionsfähig sein.
Macports¶
The Fortran Package Manager (fpm) is available via macports and can be installed with
sudo port install fpm
Nach diesen Schritten sollte fpm verfügbar und funktionsfähig sein.
Conda Paketverwaltung¶
Fpm ist auf [conda-forge] verfügbar. Um conda-forge zu nutzen muss es zu den verfügbaren Kanälen hinzugefügt werden:
conda config --add channels conda-forge
Fpm kann mit folgenden Befehlen installiert werden:
conda create -n fpm fpm
conda activate fpm
Alternativ kann fpm auch direkt in die aktuelle Umgebung installiert werden mit
conda install fpm
Spack package manager¶
Fpm is available with spack in its develop version. To install fpm from spack use
spack install fpm
You can add +openmp
to enable parallelization of the target compilation in fpm.
To use fpm in your environment load it with
spack load fpm
For more details check the package information here.
Arch Linux Nutzer Repository¶
Das Arch Linux Nutzer Repository (AUR) enthält zwei Pakete für den Fortran-Paketmanager (fpm). Mit dem fortran-fpm-bin installiert die statisch verknüpfte Linux/x86_64-Binärdatei aus der Release-Seite, während das fortran-fpm Paket fpm vom Quellcode baut.
Wähle eines der PKGBUILDs aus und lade es mit
git clone https://aur.archlinux.org/fortran-fpm.git
cd fortran-fpm
Wie immer, überprüfe zunächst das PKGBUILD vor der Benutzung. Nach der Überprüfung der PKGBUILD ist es möglich, das Paket mit zu bauen
makepkg -si
Wenn das Paket erfolgreich gebaut ist, kann es mit pacman installiert werden.
OpenBSD ports¶
A port for OpenBSD is available in the default port tree. To install fpm install the devel/fpm port with
cd /usr/ports/devel/fpm
make install clean
WinGet¶
The installer provided from the fpm release can be used via WinGet to install fpm:
winget install FortranLang.fpm
Bauen von Quellcode¶
Um fpm von Quellcode zu bauen, hole die letzte fpm-Quelldatei, entweder durch das Klonen des Repositories von GitHub mit
git clone https://github.com/fortran-lang/fpm
cd fpm
oder durch das Herunterladen eines Tarballs mit den letzten Quellen
wget https://github.com/fortran-lang/fpm/archive/refs/heads/main.zip
unzip main.zip
cd fpm-main
Das installierende Skript erlaubt es, fpm durch einen Fortran-Compiler, Git und Netzwerkzugriff zu bauen. Starte das Skript, um den Bootstrap-Bau zu starten
./install.sh
Fpm wird in ~/.local/bin/fpm
installiert.
Bemerkung
Das Bauen des Bootstrapper-Binaries aus der einzelnen Quelldatei kann ein paar Sekunden dauern, was das Skript scheinbar zum einfrieren bringt.
Tipp
Die Installations-Pfad kann mit der Option --prefix=/Pfad/zum/Installieren
angepasst werden.
Wenn das Skript nicht ausgeführt werden kann, kann der Bootstrap-Prozess manuell durchführen, mit den folgenden drei Schritten:
Lade die einzelne Quellversion von fpm herunter
wget https://github.com/fortran-lang/fpm/releases/download/current/fpm.F90
Baue ein Bootstrap-Binary aus der einzelnen Quellversion
mkdir -p build/bootstrap gfortran -J build/bootstrap -o build/bootstrap/fpm fpm.F90
Verwende das Bootstrap-Binary, um die fpm mit vollem Funktionsumfang zu bauen
./build/bootstrap/fpm install