Come utilizzare il Fortran su piattaforma unix

Alcune note utili a chi si accinge a programmare in fortran su piattaforma unix o linux

format fortran,fortran 77,dispense fortran,fortran 2003,makefile fortran

Un programma Fortran è costituito da testo che segue alcune regole (la sintassi). Questo è chiamato il codice sorgente. È necessario utilizzare un editor per scrivere o modificare il cosiddetto codice sorgente. Gli editor più comune in Unix sono emacs e vi, ma questi possono risultare un po osticiper gli utenti inesperti. Si consiglia di utilizzare un editor più semplice, come xedit che gira sotto X-Windows.

Dopo avete scritto un programma Fortran, si dovrebbe salvare il tutto in un file con estensione .f. Prima di poter eseguire il programma, si deve tradurre il programma in forma leggibile per la macchina. Questo è fatto da un apposito programma chiamato compilatore. I compilatori Fortran 77 sono di solito chiamati F77. L’output della compilazione è dato dal file a.out un po ‘criptico come nome di default, ma è possibile scegliere un altro nome, se lo si desidera. Per eseguire il programma, è sufficiente digitare il nome del file eseguibile, per esempio a.out. Allora il compilatore traduce il codice sorgente in codice oggetto e il linker / loader sistema il tutto in un file eseguibile.

Per meglio comprendere i concetti facciamo degli esempi.

Supponiamo che nella directory class vi sia un piccolo programma Fortran chiamato circle.f. È possibile compilare ed eseguire il programma attraverso la seguente procedura:

cp / usr/class/me390/circle *. f.
F77 circle.f
a.out

Si noti che ci sono parecchi punti , che ci può essere facile perdere. Se si ha bisogno di avere eseguibili diversi allo stesso tempo, è una buona idea dare agli eseguibili nomi descrittivi. Ciò può essere eseguito utilizzando l’opzione-o. Per esempio,

F77 circle.f-o circle.out

permette di compilare il file circle.f e salvare il file eseguibile nel file circle.out . Si prega di notare che i codici eseguibili e quelli oggetto occupano molto spazio su disco, si consiglia di eliminarli quando non sono utilizzati. Ricordiamo atal proposito che il comando di rimozione in Unix è rm.
Negli esempi precedenti, non abbiamo distinto tra compilazione e linking. Questi sono due processi diversi, ma il compilatore Fortran esegue entrambi, in modo che l’utente non ha bisogno di conoscerne la differenza. Ma nel prossimo esempio useremo due file di codice sorgente.

F77 circle2.f circle1.f

Questo genererà tre file, il codice di due file oggetto circle1.o e circle2.o, più il file eseguibile a.out. Ciò che è realmente accaduto qui, è che il compilatore Fortran ha prima compilato ognuno dei file del codice sorgente e li ha trasformati in file oggetto (che terminano in .o) e poi ha collegato i due file oggetto nel file eseguibile a.out È possibile separare questi due step utilizzando l’opzione-c per indicare al compilatore solo di compilare il file sorgente:

f77-c circle2.f circle1.f
F77 circle1.o circle2.o

La compilazione di file separati come in questo caso può risultareutile se ci sono molti file e solo pochi di essi devono essere ricompilati, ad esempio nella fase di debugging del progetto. In Unix non esiste un comando utile per gestire i pacchetti software di grandi dimensioni con molti file sorgente. Per ovviare a tale inconveniente questi pacchetti sono dotati di un makefile e l’utente deve solo preoccuparsi di mandare in esecuzione questo file.

Link correlati all’argomento

- Programmare con Fortran

- Note sul Fortran 90

Peeplo Engine

Un motore di ricerca nuovo, ricco e approfondito.

Inizia ora le tue ricerche su Peeplo.