fort77(1p)
NAMN
fort77 – FORTRAN-kompilator (FORTRAN)
SYNOPSIS
fort77 [-c] [-g] [-L katalog]... [-O optnivå] [-o utfil] [-s] [-w] operand...
BESKRIVNING
Verktyget fort77 är ett gränssnitt till FORTRAN-kompilationssystemet; det ska acceptera hela FORTRAN-77-språket enligt ANSI X3.9-1978-standarden. Systemet består konceptuellt av en kompilator och en länkare. Operander kompileras och länkas för att producera en körbar fil. Det är ospecificerat om länkningen sker helt inom fort77 eller först vid exekvering.
Med flaggan -c ska varje operand fil.f resultera i en objektfil:
$(basename fil.f).o
Om -c inte anges är det ospecificerat om .o-filer skapas eller raderas.
Om inga alternativ förhindrar länkning (som -c) och alla operander kompileras och länkas utan fel, ska den körbara filen skrivas till den fil som anges med -o, eller som a.out om -o saknas. Filen ska skapas med rättigheter:
S_IRWXU | S_IRWXG | S_IRWXO, med bitar nollställda enligt processens umask.
FLAGGOR
fort77 följer POSIX.1-2017, Avsnitt 12.2, med undantag:
- -l bibliotek har flaggform men påverkas av position i operandlistan
- Ordningen av -L är betydelsefull
- Flaggor ska anges separat (t.ex. -g -c, inte -gc)
Följande flaggor stöds:
-c Undertryck länkning och behåll objektfiler.
-g Generera symbolisk information (ospecificerat innehåll).
-s Ta bort symbolik ej nödvändig för exekvering ("strippa").
-o utfil Namnge den körbara filen som utfil istället för a.out. Om -o används med -c är resultatet ospecificerat.
-L katalog Sätt sökordning för -l till att först söka i denna katalog. Minst 10 -L ska stödjas.
-O optnivå Ange optimeringsnivå:
-O 0 Inaktiverar optimering -O 1 Ospecificerad optimering Andra värden får stödjas
-w Undertryck varningar
OPERANDER
Operander är antingen filnamn eller -l bibliotek. Minst en fil ska anges.
fil.f FORTRAN-kod att kompileras fil.a Bibliotek med objektfiler (t.ex. från ar) fil.o Objektfil från fort77 -c
-l bibliotek Sök i biblioteket lib''bibliotek.a
STDIN
Används ej.
INDATAFILER
Indata är antingen:
- FORTRAN-källkod
- Objektfil från fort77 -c
- Bibliotek från ar
<TAB> i de första 6 kolumnerna flyttar nästa tecken till kolumn 7.
MILJÖVARIABLER
LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, NLSPATH och TMPDIR påverkar körningen. TMPDIR styr katalog för temporära filer.
ASYNKRONA HÄNDELSER
Standard.
STDOUT
Används ej.
STDERR
Endast för felmeddelanden. Vid flera .f-filer kan:
"filnamn:\n"
skrivas ut för att identifiera fel.
Varningar kan visas utan att ge felstatus.
UTDATAFILER
Objekt-, listnings- och körbara filer skapas i ospecificerat format.
UTFÖRLIG BESKRIVNING
Standardbibliotek
-l f Innehåller funktioner enligt ANSI X3.9-1978. Behöver inte anges för att användas.
Om länkning sker ska fort77 automatiskt lägga till -l f sist i länkkommandot.
Externa symboler Symbolnamn ska stödjas upp till minst 31 byte. Case-folding tillåts. Minst 511 symboler per fil, totalt 4095. Vid för många skrivs diagnostik till standard ut.
AVSLUTNINGSSTATUS
0 om lyckad kompilering/länkning >0 vid fel
KONSEKVENSER AV FEL
Vid kompilationsfel skrivs fel till standardfel och fort77 fortsätter. Status blir över noll. Objektfil kan skapas – det är implementationdefinierat.
TILLÄMPNINGSTIPS
Inga.
EXEMPEL
Kompilera xyz.f till körbar fil foo:
fort77 -o foo xyz.f
Kompilera xyz.f till objektfil:
fort77 -c xyz.f
Kompilera xyz.f till a.out:
fort77 xyz.f
Kompilera xyz.f och länka med b.o:
fort77 xyz.f b.o
PRINCIPER
Namnet fort77 valdes för att undvika konflikt med historiska f77. ANSI X3.9-1978 valdes för att ISO-varianten är föråldrad.
Ingen C-preprocessor (som #define) krävs, trots att vissa implementationer använder den.
-onetrip utelämnades eftersom det är från FORTRAN-66.
Kompilationslistor specificeras inte på grund av oenighet.
Ingen -I inkluderas, eftersom INCLUDE är en förslag inom Fortran-90, ej POSIX.
Vissa kompilatorer skapar objektfiler trots fel. Detta är tillåtet.
MIL-STD-1753 togs bort på förfrågan från POSIX FORTRAN-gruppen.
Optimering:
-O 0 Inaktivera -O 1 Någon optimering -O n Andra, ospecificerade
Syftet med -O 0 är att förhindra semantiskt påverkande optimering.
Standardbiblioteket libf.a behöver inte finnas som fil, men -l f ska fungera.
Symbolgränser anges för att applikationer ska kunna anpassa sig. Vad som sker vid överträdelse är ospecificerat.
Vid fel kan länkaren lämna efter sig en delvis skriven fil, eller inget alls. Program ska inte lita på existensen av a.out, endast på exitstatus.
-g och -s är inte inbördes uteslutande.
Flaggorna måste anges separat (inte -gc). Det reserverar flerbokstavskombinationer för leverantörer.
Filnamn på stderr är ett diagnostiskt meddelande för att underlätta felsökning.
FRAMTIDA ÄNDRINGAR
Detta verktyg kan komma att tas bort i framtida standarder. Modernare Fortran-kompilatorer existerar.
SE ÄVEN
ar(1p), asa(1p), c99(1p), umask(1p), exec(1p)
POSIX.1-2017: Kapitel 8 (Miljövariabler), Avsnitt 12.2 (Syntax för verktyg)
COPYRIGHT
Delar av denna text är hämtad från IEEE Std 1003.1-2017, The Open Group Base Specifications Issue 7, 2018 Edition. Se http://www.opengroup.org/unix/online.html
Typografiska fel kan ha uppstått vid konvertering. Rapportera fel till: https://www.kernel.org/doc/man-pages/reporting_bugs.html
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/fort77.1p.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp Bromma som har sponsrat Linux.se med webbhotell.