Quale versione del fortran utilizzi?
A cura di Giuseppe Ciaburro
Pubblicato il 03/05/2001
Compilazione di programmi eseguibili in ambiente UNIX-LINUX, come ottenere da un sorgente f77 un eseguibile.
La sintassi del fortran 77 per la compilazione di un eseguibile di nome nomefile dal sorgente nomefile.f e' la seguente:
f77 -o nomefile nomefile.f -I$HOME/f77/include -L$HOME/f77/lib -llibreria
-I
indica la directory di librerie per gli include (oltre quelle di sistema)
-L indica la directory di librerie per il link (oltre quelle di sistema)
-l per indicare il file di libreria, senza il suffisso .a e senza il prefisso
lib.
Note:
se non si specifica il nome dell'eseguibile che si vuole produrre, il sistema
gli assegna il nome di default a.out. E' anche possibile richiamare separatamente
il compilatore f77 e il linker ld, ma in tal caso al linker vanno specificate
anche le librerie di sistema, quindi non conviene.
E' possibile creare uno script che permetta la compilazione, il link e l'esecuzione
del sorgente di un eseguibile Fortran. Tale script puo' essere copiato nella
directory etc dell'utente ed adattato alle esigenze specifiche fornendo i nomi
delle directories di Include, delle librerie per il link e le eventuali opzioni
per il compilatore secondo la normale sintassi. Si può quindi creare
anche uno script che contenga i parametri di compilazione opportuni per eseguire
un programma Fortran da debugger interattivo, dbx.
Nota: Si sono verificati alcuni casi in cui la compilazione di un sorgente Fortran
produce un errore del compilatore che termina con i messaggi seguenti:
Assertion failure: Compiler internal error - please submit problem report GEM ASSERTION, Compiler internal error - please submit problem report Fatal error
In tal caso si puo' provare ad utilizzare l'opzione -O0, che disabilita le ottimizzazioni effettuate nella fase di link del programma.