g77 - GNU プロジェクト Fortran
コンパイラ (v0.5.24)
g77
[option |
filename ]...
このマニュアルに書かれた情報は
GNU Fortran コンパイラ (version 0.5.24) の
完全なドキュメンテーションからの抜粋であり、
いくつかのオプションの意味の記述にとどめます。
このマニュアルはボランティアのメンテナンスが行なわれていないので、
最新の情報を示してはいません。
もしこのマニュアルと実際のソフトウェアの間に矛盾点があれば、
正式なドキュメントである
Info
ファイルのほうを参照して下さい。
このマニュアル中の古い記述が重大な混乱や不具合をきたすことになれば、
このマニュアルページの配布は中止します。
GNU Fortran
のメンテナンス作業の都合上、
Info
ファイルを更新した時にマニュアルページも併せて更新することは
実際的ではありません。マニュアルページは時代遅れであり、
これに時間をかけるべきではないと
GNU
プロジェクトでは考えています。
完全な最新のドキュメンテーションが必要な場合は、Info
ファイルの`
g77'
またはマニュアルの
Using and Porting GNU Fortran (for version 0.5.24)
を参照して下さい。この双方は
Texinfo のソースファイル
g77.texi
から生成されます。
システムに`
info'
コマンドがインストールされていて、
g77
が正しくインストールされていれば、コマンド`
info
g77'
でうまくいくでしょう。
システムに `
info'
がないか,
今のところは使いたくなくても、
g77
が正しくインストールされていれば、
コマンド `
more /usr/info/g77.info*'
でうまくいくでしょう。
もし
g77
が正しくインストールされていなくて、その
Info ファイルが簡単には
利用できないなら、システム管理者か
(もし知っているのなら)
g77
をインストールした人に問題を解決するように頼んで下さい。
C と F77
のコンパイラは統合されています。
g77 は Fortran (ANSI FORTRAN 77、F77
とも呼ばれます)
で書かれたプログラムを
認識するためのオプションをつけて
gcc
を呼び出すプログラムです。
gcc
では、入力ファイルは、プリプロセス、コンパイル、アセンブル、リンクの
4 つの
処理ステージのうちの
1
つ以上のステージを踏んで処理されます。
このマニュアルには、一般的な目的のためのオプションのまとめもありますが、
完全な説明があるのはコンパイラの
F77 に固有の面
だけ
です。
コンパイラのより充実した説明が必要なときは、
gcc(
1)
を参照して下さい。
GNU Fortran
の完全なドキュメントが必要なときは
`
info g77'
と入力して下さい。
F77
ソースファイルは拡張子
`
.f', `
.for', `
.FOR'
を使います。
cpp(
1)
によって前処理される
F77 ファイルは 拡張子
`
.F ', `
.fpp', `
.FPP'
を使います。ratfor
ソースファイルは拡張子
`
.r' を使います (
ratfor
自体は
g77
の一部として提供されてはいませんが)。
gcc と
g77
に共通の、最適化や警告やコード生成の詳細を制御するオプションを含む
多くのコマンドラインオプションがあります。
すべてのオプションの完全な情報が必要な場合は、
gcc(
1)
を参照して下さい。
オプションは分割されていなければなりません。すなわち
`
-dr' は `
-d -r '
とは異なった扱いを受けます。
ほとんどの `
-f' と `
-W'
形式のオプションには、
-fname と
-fno-name
(または
-Wname と
-Wno-name )
の形式の、対照的な表現があります。ここではデフォルトでない形式
のみを示します。
- -c
- ソースファイルを、コンパイルまたはアセンブルまではしますが、リンクはしません。
コンパイラの出力は、それぞれのソースファイルに対応したオブジェクトファイル
となります。
-
-Dmacro
- マクロ macro
に対して文字列 `1'
を定義として与えます。
-
-Dmacro=defn
- マクロ macro を defn
として定義します。
- -E
- プリプロセス処理が終了したところで停止します。コンパイルはしません。
出力はプリプロセス済みのソースコードであり、標準出力へと送られます。
- -g
- オペレーティングシステムのネイティブのフォーマット
(DBX, SDB,DWARF) で
デバッグ情報を生成します。GDB
はこのデバッグ情報に基づいて動作することが
できます。 DBX
フォーマットを使用するほとんどのシステムにおいては、`-g'
を指定すると、GDB
だけが使用できる余分なデバッグ情報が使用可能に
なります。
他の多くの Fortran
コンパイラと異なり、GNU
Fortran は `-g' を `-O'
とともに使用することを許しています。最適化されたコードが通る近道は、
時には驚くべき結果を生み出すかもしれません。
定義したはずの変数が存在しなかったり、
制御の流れが予想もしなかった場所に移動したり、結果が定数とわかる計算や、
結果がすでに手元にある文は実行されなくなり、ある文がループの外に追い出されて
別の場所で実行されたりします。
それにも関わらず、このオプションは最適化された出力のデバッグを可能とし
ています。これによって、バグを含むかもしれないプログラムに対して
オプティマイザを使用することができるようになります。
-
-Idir
- ディレクトリ dir
を、インクルードファイルの検索するディレクトリのリスト中に追加します。
-
-Ldir
- ディレクトリ dir
を `-l'
による検索が行なわれるディレクトリのリストに加えます。
-
-llibrary
- 名前が library
であるライブラリをリンク時に使用します。
- -nostdinc
- ヘッダファイルのための標準のシステムディレクトリを検索しません。
-I
オプションによって指定したディレクトリ
(またはカレントディレクトリ)
のみを検索します。
- -O
- 最適化を行います。最適化コンパイルは幾分長めの処理時間と、大きな関数に対
する非常に多くのメモリを必要とします。これ以上の最適化オプションについては
GCC
ドキュメントを参照して下さい。
特にループ展開は典型的な数値計算の
Fortran
プログラムにとっては
調べる価値があるかも知れません。
-
-o file
- 出力先を file
に指定します。
- -S
- コンパイルが終った所で処理を停止し、アセンブルは行いません。
アセンブラコードではない入力ファイルが指定された場合は、出力は
アセンブラコードのファイルになります。
-
-Umacro
- マクロ macro
の定義を無効にします。
- -v
- (標準エラー出力に対して)
コンパイルの各ステージで実行されるコマンドを
表示します。コンパイラドライバ、プリプロセッサおよび本来のコンパイラの
各バージョン番号も表示します。g77
自体のバージョン番号と、
それが基づいている
GCC
ディストリビューションのバージョン番号は
別のものです。
- -Wall
- たとえマクロとの組み合わせであっても、
避けたほうがいいと我々が推奨する用法や、
簡単に避けることができると我々が信じている用法に関する場合に警告します
file.h C 言語ヘッダ
(プリプロセッサ)
ファイル
file.f Fortran ソースファイル
file.for Fortran ソースファイル
file.FOR Fortran ソースファイル
file.F プリプロセス済みの
Fortran ソースファイル
file.fpp
プリプロセス済みの
Fortran ソースファイル
file.FPP
プリプロセス済みの
Fortran ソースファイル
file.r ratfor ソースファイル (ratfor
は含まれていません)
file.s
アセンブリ言語ファイル
file.o
オブジェクトファイル
a.out
リンクエディット済みの出力
TMPDIR/cc∗ 一時ファイル群
LIBDIR/cpp プリプロセッサ
LIBDIR/f771 コンパイラ
LIBDIR/libg2c.a Fortran
実行時ライブラリ
LIBDIR/libgcc.a GCC
サブルーチンライブラリ
/lib/crt[01n].o スタートアップルーチン
/lib/libc.a 標準ライブラリ、
intro(3) を参照
/usr/include
#include
ファイルのための標準
ディレクトリ
LIBDIR/include
#include
ファイルのための GCC
標準 ディレクトリ
LIBDIR は通常
/usr/local/lib/machine/
version
の形式を持ちます。
TMPDIR は環境変数
TMPDIR
(もし使用可能ならば
/usr/tmp
を、そうでなければ
/tmp を使用します)
からとられます。
gcc(1),
cpp(1),
as(1),
ld(1),
gdb(1),
adb(1),
dbx(1),
sdb(1).
info中の `
g77', `
gcc', `
cpp',
`
as', `
ld', `
gdb'
エントリ。
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.
バグを報告する方法については、`
info
g77 -n Bugs'
と入力して下さい。
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.
GNU CC
に対して貢献した人々に関しては、GNU
CC
マニュアルを参照して下さい。
GNU Fortran
に対して貢献した人々に関しては、GNU
Fortran マニュアルを
参照して下さい。