Ifort
Intel(R) Fortran 9 installieren¶
Fehlendes Makro
Das Makro „Getestet“ konnte nicht gefunden werden.
Fehlendes Makro
Das Makro „Getestet“ konnte nicht gefunden werden.
''Diese Anleitung setzt die Kenntnis folgender Seiten voraus:'' * ''[1]: [:Terminal: Ein Terminal öffnen]'' * ''[2]: [:Pakete_installieren: Software installieren]''
Der Intel(R) Fortran Compiler 9 steht für den nicht kommerziellen, akademischen und bildenden Gebrauch unter Linux kostenlos zur Verfügung. Leider existiert der Compiler nur in Form eines rpm Paketes. Auf dieser Seite soll beschrieben werden, wie der Compiler dennoch unter Ubuntu installiert werden kann. Dazu wird ein eigenes deb Paket gebaut, so dass sich die Software leicht wieder entfernen lässt.
Benötigte Software¶
Um aus den RPMs von Intel(R) Ubuntu-Pakete erstellen zu können muss die folgende Software installiert[2] werden:
alien
rpm
Vorbereitende Schritte¶
Bevor wir mit der eigentlichen Arbeit beginnen können, um den Compiler zu installieren, müssen einige Schritte zur Vorbereitung unternommen werden.
Compiler herunterladen¶
Den Compiler könnt ihr von intel hier: Intel Fortran herunterladen. Ihr müsst dort eine E-Mail Adresse hinterlassen, an diese wird eure Lizenzdatei geschickt, ohne die der Compiler nicht funktionieren wird.
Dateien entpacken¶
Das heruntergeladene Paket l_fc_p*.tar.gz im Terminal[1] entpacken
tar -xvzf l_fc_p*.tar.gz
Nach dem entpacken findet ihr im aktuellen Verzeichnis ein neues Unterverzeichnis namens l_fc_p_Version.
Arbeitsumgebung vorbereiten¶
Am besten legt ihr euch nun an passender Stelle ein Arbeitsverzeichnis ifort an. Hier wird nur die i386 Architektur behandelt, für die übrigen in dem Paket enthaltenen sind aber im Prinzip die gleichen Schritte nötig. Im oben entpackten Verzeichnis finden sich diverse Pakete (*.rpm), die die zu installlierende Software enthalten. Der Compiler für die i386 Architektur findet sich in der Datei intel-ifort9-Version.i386.rpm. Der Debugger in intel-iidb9-Version.i386.rpm. Diese beiden Dateien kopiert ihr euch in euer frisch angelegtes Verzeichnis ifort. Anschließend wechselt ihr in dieses ifort Verzeichnis.
Compiler installieren¶
Zunächst entpacken wir den Compiler, der im rpm Format vorliegt und legen zugleich eine passende Debian Struktur an. Dies erreichen wir durch ein:
sudo alien --to-deb -g intel-ifort9*.i386.rpm
Es werden zwei neue Unterverzeichnisse angelegt:
intel-ifort9-9.0 Enthält die Daten, die alien aus dem rpm Paket erstellt hat.
intel-ifort9-9.0.orig Enthält die original Daten aus dem rpm Paket.
Wir wechseln nun in das neu angelegte Verzeichnis intel-ifort9-9.0.
Wichtig: Die im folgenden beschriebenen Aktionen werden alle in diesem Verzeichnis und mit root-Rechten ausgeführt! Dass heißt entweder ihr öffnet ein Root-Terminal[1] und wechselt in das Verzeichnis oder ihr müsst allen Befehlen ein sudo voranstellen.
Dateien an ihren Platz schieben¶
Die im rpm Paket vorgeschlagene Verzeichnisstruktur ist für Ubuntu suboptimal. Wir schieben hier alle Dateien in /usr/local. Dort werden die Executables und Libraries standardmässig gefunden, und sind dennoch "aus dem Weg". Falls ihr die Software in andere Pfade installieren wollt, müsst ihr die Skripte entsprechend anpassen.
mkdir -p usr/local/bin mkdir -p usr/local/share/doc/fc/9.0 mkdir -p usr/local/include mkdir -p usr/local/lib mkdir -p usr/local/man/man1 rm -f opt/intel/fc/9.0/bin/uninstall.sh mv opt/intel/fc/9.0/bin/* usr/local/bin mv opt/intel/fc/9.0/doc usr/local/share/doc/fc/9.0 mv opt/intel/fc/9.0/include/* usr/local/include mv opt/intel/fc/9.0/lib/* usr/local/lib mv opt/intel/fc/9.0/licenses usr/local/share/doc/fc/9.0 mv opt/intel/fc/9.0/man/man1/* usr/local/man/man1 rm -rf opt
Lizenzdatei in Paket aufnehmen¶
Falls ihr euer erstelltes Ubuntu-Paket nicht weitergeben wollt, und die Lizenzdatei beim deinstallieren ebenfalls entfernt werden soll, könnt ihr nun die Lizenzdatei, die ihr per Mail von Intel(R) bekommen habt an die passende Stelle einfügen:
cp Pfad_zur_Lizenz/*_for_l_*.lic usr/local/share/doc/fc/9.0/licenses
Compiler konfigurieren¶
Schließlich müssen noch einige Dateien angepasst werden. Es muss dort über all der richtige Pfad zu den einzelnen Komponenten eingetragen werden. Das wird durch folgende Schritte erreicht:
sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/share\/doc\/fc\/9.0\/licenses/g' \ -i -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -i -e 's/<INSTALLDIR>\/lib/\/usr\/local\/lib/g' usr/local/bin/ifc sed -i -e 's/<INSTALLDIR>\/include/\/usr\/local\/include/g' usr/local/bin/ifc.cfg sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/share\/doc\/fc\/9.0\/licenses/g' \ -i -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -i -e 's/<INSTALLDIR>\/lib/\/usr\/local\/lib/g' usr/local/bin/ifort sed -i -e 's/<INSTALLDIR>\/include/\/usr\/local\/include/g' usr/local/bin/ifort.cfg sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/share\/doc\/fc\/9.0\/licenses/g' \ -i -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -i -e 's/<INSTALLDIR>\/lib/\/usr\/local\/lib/g' \ -i -e 's/<INSTALLDIR>\/man/\/usr\/local\/man/g' usr/local/bin/ifortvars.csh sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/doc\/fc\/9.0\/licenses/g' \ -i -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -i -e 's/<INSTALLDIR>\/lib/\/usr\/local\/lib/g' \ -i -e 's/<INSTALLDIR>\/man/\/usr\/local\/man/g' usr/local/bin/ifortvars.sh sed -i -e 's/<installpackageid>/l_fc_p_9\.0\.021/' \ usr/local/share/doc/fc/9.0/doc/fsupport
Das Ubuntu-Paket bauen¶
Noch einmal sicherstellen, dass die Dateien alle root gehören:
sudo chown -R root:root usr/
Dann sind wir endlich soweit, dass wir das debian Paket bauen können. Generell wäre es auch möglich jetzt einfach das gesamte usr/ Unterverzeicheinis in das root / hineinzukopieren. Allerdings würde das eine deinstallation erheblich erschweren. Dazu gibt es ja dpkg, und wir sind auch nur noch eine Zeile von dem komfortablen Ubuntu Paket entfernt:
Das .deb lässt sich durch ein:
sudo dpkg-buildpackage -us -B
im Terminal[1] bauen.
Dadurch entsteht im übergeordneten ifort Verzeichnis ein passendes Ubuntu Paket, dass sich wie gewöhnlich installieren und deinstallieren lässt.
Nach der Installation¶
(Nicht mehr im Verzeichnis intel-ifort9-9.0)
Falls ihr den Compiler in ein eigenes Verzeichnis installiert habt, so bietet es sich an, die Position allgemein bekannt zu machen:
sudo sh -c 'echo "source /usr/local/bin/ifortvars.sh" >> /etc/profile'
Habt ihr die Lizenzdatei von intel nicht bereits in das Paket aufgenommen, so müsst ihr es nun noch an die passende Stelle kopieren:
cp Pfad_zur_Lizenz/*_for_l_*.lic /usr/local/share/doc/fc/9.0/licenses
Debugger installieren¶
Die Installation des Debuggers folgt dem selben Schema wie die Installation des Compilers.
Zunächst entpacken wir den Debugger, der im rpm Format vorliegt und legen zugleich eine passende Debian Struktur an. Dies erreichen wir durch ein:
sudo alien --to-deb -g intel-iidb9*.i386.rpm
Es werden zwei neue Unterverzeichnisse angelegt:
intel-iidb9-9.0 Enthält die Daten, die alien aus dem rpm Paket erstellt hat.
intel-iidb9-9.0.orig Enthält die original Daten aus dem rpm Paket.
Wir wechseln nun in das neu angelegte Verzeichnis intel-iidb9-9.0.
Wichtig: Die im folgenden beschriebenen Aktionen werden alle in diesem Verzeichnis und mit root-Rechten (sudo) ausgeführt!
Dateien an ihren Platz schieben:¶
Solltet ihr bei der Installation des Compilers andere als die oben angegebenen Pfade verwendet haben, solltet ihr hier die zu eurer Auswahl passenden Pfade verwenden.
mkdir -p usr/local/bin mkdir -p usr/local/share/doc/idb mkdir -p usr/local/man/man1 rm -f opt/intel/idb/9.0/bin/uninstall.sh mv opt/intel/idb/9.0/bin/* usr/local/bin mv opt/intel/idb/9.0/doc usr/local/share/doc/idb mv opt/intel/idb/9.0/man/man1/* usr/local/man/man1 rm -rf opt
Debugger konfigurieren¶
Folgende Schritte passen den Debugger an die Ubuntu-Umgebung an:
sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/share\/doc\/fc\/9.0\/licenses/g' \ -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -e 's/<INSTALLDIR>\/man/\/usr\/local\/man/g' usr/local/bin/idbvars.csh sed -i -e 's/<INSTALLDIR>\/licenses/\/usr\/local\/share\/doc\/fc\/9.0\/licenses/g' \ -e 's/<INSTALLDIR>\/bin/\/usr\/local\/bin/g' \ -e 's/<INSTALLDIR>\/man/\/opt\/man/g' usr/local/bin/idbvars.sh sed -i -e 's/<INSTALLTIMECOMBOPACKAGEID>/l_fc_p_9\.0\.021/' \ usr/local/share/doc/idb/idbsupport
Das Paket bauen und Installation¶
Das Debugger Paket wird genauso erstellt, wie bereits für den Compiler beschrieben. Abschließende Arbeiten nach der Installation sind nicht nötig.