NAZWA
g77 − Kompilator Fortranu GNU (v0.5.24)
SKŁADNIA
g77 [opcje | nazwa pliku ]...
OSTRZERZENIE
Informacje na tej stronie podręcznika systemowego są jedynie streszczeniem pełnej dokumentacji kompilatora fortranu GNU (w wersji 0.5.24). W związku z tym ta strona opisuje tylko pewne wybrane opcje.
Ta strona nie jest i nie będzie aktualna, tak długo jak nie znajdą się chętni do jej aktualizowania wolontariusze. Jeżeli znajdziesz rozbieżności pomiędzy strona podręcznika systemowego a programem, sprawdź proszę plik Info, który zawiera pełną dokumentacje do kompilatora Fortran GNU.
Gdyby okazało się, że informacje na tej stronie są zupełnie nie aktualne i wprowadzają w błąd, przestaniemy rozprowadzać tę stronę. Aktualizowanie i tej strony i pliku Info, jest niepraktyczne i nie mamy na to czasu.
Po kompletną i aktualną inforamcję, zajrzyj do pliku Info ’g77’ lub do Using and Porting GNU Fortran (dla wersji 0.5.24). Oba te źródła informacji zostały stworzone z tego samego pliku g77.texi.
Jeżeli twój system ma zainstalowaną komendę ’info’, wówczas komenda ’info g77’ powinna działać, pod warunkiem, że g77 zostało poprawnie zainstalowane.
OPIS
Kompilatory C i F77 są zintegrowane; g77 jest programem wywołujacym gcc z opcjami umożliwjającymi kompilację programów napisanych w Fortranie (ANSI FORTRAN 77, nazywany również F77). W pracy gcc wyróżnić można cztery etapy: preprocesing, właściwa kompilacja, kompilacja z użyciem assemblera oraz linkowanie. Ta strona manuala zawiera pełny opis tylko aspektów specyficznych dla kompilatora F77. Chociarz zawiera ona równierz opis pewnych opcji o szerszym zastsowaniu. Po pełniejsze wyjaśnienia pracy kompilatora, sięgnij do gcc(1).
Pliki źródłowe F77 używają rozszerzeń ’.f ’ lub ’.for ’; Pliki źródłowe F77 preprocesowane przez cpp(1) używają rozszerzenia ’.F’ lub ’.fpp’; Pliki źródłowe Ratfot uzywają roozszeżenia ’.r’ ( ratfor jako taki nie jest cześcią g77).
OPCJE
Istnieje bardzo dużo opcji wywoływanych z linii komend, włączając w to opcję konrolujące: szczegóły optymalizacyjne, ostrzerzenia i generację kodu wspólne dla obu programów gcc i g77. Po pełna dokumentacje wszystkich opcji, zobacz gcc(1).
Opcję muszą być oddzielone: ’−dr’ jest zupełnie czym innym niż ’−d −r ’.
Większość opcji zaczynających się od ’−f’ i ’−W’posiada dwie formy: −fname i −fno−name (lub −Wname i −Wno−name). Na tej stronie opisanę są tylko nie standardowe opcje.
−c |
Skompiluj kompilatorem fortranu i kompilatorem assemblera pliki źródłowe, ale nie linkuj ich. Wynikiem pracy programu z tą opcją jest po jednym pliku typu object dla każdego pliku źródłowego. |
−Dmacro
Zdefinjuj makro macro z ciągiem znaków ’1’ jako jego definicją.
−Dmacro=defn
Zdefinjuj makro macro jako defn.
−E |
Zatrzymaj po etapie preprocesowania; nie uruchamiaj właściwego kompilatora. Wynikiem jest preprocesowany kod źródłowy, wysyłany na standardowe wyjście. | ||
−g |
Dołącz inforamcje do "odpluskwiania" w formacje właściwym dla systemu operacyjnego (dla DBX, SDB lub DWARF). GDB potrafi pracować z tymi informacjami. Na większości systemów używających formatu DBX, opcja ’−g’ powodóje dołączenie dodatkowej informacji, którą tylko GDB potrafi użyć. W przeciwienstwie do większosci compilatorów Fortranu, Fortran GNU pozwala łączyć opcje −g’ z opcją ’−O’. Skróty czynione przez zoptymalizowany kod mogą czasami być dużą niespodzianką. Pewnych zadeklarownych zmiennych może wogóle nie być; przepływ kontroli może cię ogólnie mówiąc przenieść tam, gdzie tego nie oczekiwałeś; Pewne fragmenty kodu mogą zostać wycięte ponieważ zwracały stały wynik, lub ich wartość była ustalona od początku; Pewne fragmenty kodu mogą zostać przeniesione na zewnątrz pętli. Jednak mimo to, możliwe jest debugowanie wyjścia zoptymalizowanego. Powoduje to, że jest sens używać optymizera w programach, które mogą mieć błędy. | ||
−Idir |
Dołącz katalog dir do listy katalogów przeszukiwanych w trakcje dołanczania plików. | ||
−Ldir |
Dołącz katalog dir do listy katalogów przeszukiwanych w poszukiwaniu bibliotek. |
−llibrary
Użyj biblioteki library podczas linkowania.
−nostdinc
Nie przeszukój standardowego systemu plików w poszukiwaniu plików nagłówkowych. Tylko katalogi wskazane opcją −I (i katalog bieżący) mają być przeszukiwane.
−O |
Optymalizuj. Optymalizacja zabiera dużo czasu, i pamieci szczególnie dla dużych funkcji. Zajrzyj do dokumentacji GCC aby zapoznać się z innymi opcjami optymalizacyjnymi. W szczególności "odwijanie petli", może być dobrą inwestycją w typowych numerycznych programach Fortranowskich. |
−o plik
Zapisz wynik w pliku plik.
−S |
Zatrzymaj po etapie właściwej kompilacji; nie uruchamiaj kompilatora assemblera; Wynikiem jest jeden plik zawierający kod assemblerowy dla każdego nie-assemblerowego pliku zródłowego. |
−Umacro
Skasuj definicje makra macro.
−v |
Powoduje wypisywanie (na standardowym wyjściu dla błędów), komend wywoływanych podczas kolejnych etapów kompilacji. Wypisuje również numer wersji: programu sterującego kompilatorem, preprocesora oraz właściwego kompilatora. Numery wersji g77 i dystrybucji GCC na której bazuje są różne. | ||
−Wall |
Wypisuje ostrzeżenia dla sytuacji, które pretendują do konstrukcji, których używania się nie poleca i których użycie jest proste, nawet w połączeniu z makrami. |
PLIKI
file.h Plik
nagłówkowy C
file.f Plik źródłowy Fortranu
file.for Plik źródłowy Fortranu
file.F Wynik działania preprocesora na plik
źródłowy Fortranu.
file.fpp Wynik działania preprocesora na plik
źródłowy Fortranu.
file.r Plik źródłowy Ratfor (ratfor nie
jest obsługiwany)
file.s Plik w jezyku assemblera
file.o Plik object
a.out Zlinkowane wyjście.
TMPDIR/cc∗ Plik tymaczasowy
LIBDIR/cpp preprocesor
LIBDIR/f771 kompilator
LIBDIR/libg2c.a Biblioteka Fortranu czasu wykonywania.
LIBDIR/libgcc.a Biblioteka procedur GCC
/lib/crt[01n].o start-up routine
/lib/libc.a standardowa biblioteka C, zobacz intro(3)
/usr/include standardowy katalog dla plików
#include
LIBDIR/include standardowy katalog gcc plików
#include
LIBDIR jest to zwykle /usr/local/lib/machine/version.
TMPDIR ustawiane jest jako zmienna środowiskowa TMPDIR (standardowo /usr/tmp jeźeli jest to możliwe w przeciwnym wypadku /tmp).
ZOBACZ TAKŻE
gcc(1), cpp(1),
as(1), ld(1), gdb(1), adb(1), dbx(1), sdb(1).
’g77’, ’gcc’,
’cpp’, ’as’,
’ld’, i ’gdb’
używając info.
Using and Porting GNU Fortran (for version 0.5.24),
James Craig Burley; Using and Porting GNU CC (for version
2.0), Richard M. Stallman; The C Preprocessor,
Richard M. Stallman; Debugging with GDB: the GNU
Source-Level Debugger, Richard M. Stallman and Roland H.
Pesch; Using as: the GNU Assembler, Dean Elsner, Jay
Fenlason & friends; gld: the GNU linker, Steve
Chamberlain and Roland Pesch.
BŁĘDY
Instrukcję jak informować o błędach otrzymasz po wydaniu komendy ’info g77 -n Bugs’.
KOPIOWANIE
Copyright (c) 1991-1998 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English.
AUTORZY
Zajrzyj do GNU CC Manual, aby poznać współpracowników GNU CC oraz do GNU Fortran Manual, aby poznać współpracownikow GNU Fortran.
INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika.