Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ f7768(1) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fsplit(1)

ld68(1)

ar68(1)

ranlib68(1)

efl(1)

ratfor(1)

struct(1)

cc68(1)

F77(1)  —  NEWS-OS Programmer’s Manual

名称

f7768 − Fortran 77 68K クロスコンパイラ

形式

f7768 [ option ] ...  file ... 

解説

f7768 は、 UNIXの Fortran 77 68K クロスコンパイラです。 いくつかのタイプの引数 が使えます。

名前が‘.f’で終わっている引数は、 Fortran 77 のソースプログラムと見なされます。 これらのソースプログラムはコンパイルされ、 各オブジェクトファイルは、 カレントディレクトリ内に残されます。オブジェクトファイル名は、 ソースの名前の‘.f’を ‘.o’で置き換えたものです。

名前が‘.F’で終わっている引数も、 Fortran 77 のソースプログラムと見なされます。 これらのソースプログラムは、 f7768 によってコンパイルされる前に C プリプロセッサによって処理されます。

名前が‘.r’または‘.e’で終わっている引数は、 それぞれ ratfor または EFL のソースプログラムと見なされます。 これらのソースプログラムは、 適切なプリプロセッサによって前処理されてから f7768 によってコンパイルされます。

名前が‘.c’または‘.s’で終わっている引数は、 C またはアセンブリのソースファイルと見なされてコンパイルまたはアセンブルされ、 ‘.o’ファイルが作られます。

以下のオプションは cc(1) の場合と同じ意味を 持っています。 ロード時のオプションについては、 ld(1) を 参照してください。

−c ローディング段階を 抑制し、 各ソースファイルについて‘.o’ファイルを 作ります。

−g dbx(1) のための付加的なシンボルテーブル情報を 作り、 異常終了時にメモリイメージがファイル core に書き込まれるようにするために、 −lg フラグを ld(1) に渡します。 −O と共に使用することはできません。

−o output
最終出力ファイル の名前を‘a.out’の代わりに output に指定します。

−p プロファイル作成のために、オブジェクトファイルを 準備します。 prof(1) を 参照してください。

−pg −p と同様にカウンティングコードを コンパイラに作らせますが、 より幅の広い統計を キープし、 正常終了時に gmon.out ファイルを 作る実行時記録メカニズムを 呼び出します。 これで gprof(1) を 使用して実行プロファイルを 生成することができます。

−w 警告メッセージを すべて抑制します。 オプションを −w66 とした場合には、 Fortran 66 と互換性のある警告メッセージだけが抑制されます。

−Dname=def

−Dname
‘#define’で定義するのと同様に、 C プリプロセッサに対して name を 定義します。 定義が与えられない場合には、 名前は "1" として定義されます (‘.F’のサフィックスを 持つファイルだけ)。

−Idir 名前が‘/’で始まっていない‘#include’ファイルは、 まず引数 file のディレクトリ内が、 次に −I オプションで指定されたディレクトリ内が、 そして最後に標準的なリストにあるディレクトリ内が探されます (‘.F’サフィックスを 持つファイルについてだけ)。

−O オブジェクトコード最適化プログラムを 呼び出します。 −g と共に使用することはできません。

−S 指定されたプログラムを コンパイルし、 アセンブラ言語の出力を サフィックス‘.s’が付けられた対応するファイルに残します (‘.o’は作成されません)。

以下のオプションは f7768 に固有なオプションです。

−d コンパイラを デバッグするために使用されます。

−i2 short 型の整数を サポートするマシンで、 デフォルトの整数の定数と変数を short 型にします。 (−i4 がこのオプションの標準的な値です。) すべての論理的な数量は short になります。

−q コンパイルの最中に行われるファイル名とプログラムユニット名の表示を 抑制します。

−m Ratfor または EFL プリプロセッサで‘.r’ファイルを 処理する前に、 各‘.r’ファイルに M4 プリプロセッサを 適用します。

−onetrip

−1 DO ループが最低 1 回は実行されるように コンパイルします (Fortran 77 の DO ループは、 上限値が下限値よりも小さい場合には、 1 回も実行されません)。

−r8 すべての浮動小数点変数、 定数、 関数、 組み込み関数を 倍精度として扱い、 すべての複素数を 倍精度複素数として扱います。

−u デフォルトの Fortran 規則を 使用せずに、 変数のデフォルトのタイプを ‘未定義’にします。

−v コンパイラのバージョン番号と、 実行中の各パスの名前を 表示します。

−C サブスクリプト (添字) が宣言されている配列境界内にあることを チェックするために、コードを コンパイルします。 多次元配列の場合には、 一次元に相当するサブスクリプトだけがチェックされます。

−F Cプリプロセッサを ‘.F’ファイルに、 そして EFL または Ratfor プリプロセッサを ‘.e’、 および‘.r’ファイルに適用し、 コンパイルは行わずに、 サフィックスが‘.f’のファイルに結果を 収めます。

−Ex ‘.e’ファイルの処理で、 文字列 x を EFL のオプションとして使用します。

−Rx ‘.r’ファイルの処理で、 文字列 x を ratfor のオプションとして使用します。

−N[qxscn]nnn
コンパイラ内の静的なテーブルを 大きくします。 コンパイラは、 そのテーブルを オーバーフローした場合には 注意を促し、 1 つまたは複数のフラグを 使用するように示唆します。 これらのフラグは、 次の意味を 持っています。

q EQUIVALENCE 指定された変数の最大数。 デフォルトは 150。

x 外部名 (共通ブロック名、 サブルーチン名および関数名) の最大数。 デフォルトは 200。

s 行番号の最大数。 デフォルトは 401。

c 制御文 (例えば DO ループ) のネスティングの深さの最大値。 デフォルトは 20。

n 識別名の最大数。 デフォルトは 1009。

−U 大文字を 小文字に変換しません。 デフォルトでは、 文字列定数内を 除いて、 Fortran プログラムは小文字に変換されます。

他の引数は、 ローダのオプション引数、または F77 と互換性のある オブジェクトプログラム (通常は以前の実行によって作られたもの)、 または F77 と互換性のあるルーチンライブラリのいずれかと見なされます。 これらのプログラムは、 指定されたコンパイルの結果とともに、 指定された順にロードされて‘a.out’という名前の 実行可能プログラムになります。

f7768 を 用いてコンパイルされたプログラムは、 ローディングで −g フラグが指定されていると、 異常終了時にはファイル core にメモリダンプを 作ります。 環境変数 f77_dump_flag が y または n にセットされていると、 異常終了時のダンプがぞれぞれ強制または抑制されます。

関連ファイル

file.[fFresc] 入力ファイル

file.o オブジェクトファイル

a.out ロードされた結果

/usr/lib/cross68/f77pass1 コンパイラ

/lib/cross68/f1 パス 2

/lib/cross68/c2 オプションの最適化プログラム

/lib/cross68/cpp C プリプロセッサ

/usr/lib/cross68/libF7768.a 組み込み関数ライブラリ

/usr/lib/cross68/libI7768.a Fortran の I/O ライブラリ

/usr/lib/cross68/libU7768.a UNIX インタフェースライブラリ

/usr/lib/cross68/libm68.a 数学ライブラリ

/lib/cross68/libc68.a C ライブラリ、第 3 章を参照

mon.out prof(1) の解析用に作られるファイル

gmon.out gprof(1) の解析用に作られるファイル

関連事項

S. I. Feldman, P. J. Weinberger, J. Berkman, A Portable Fortran 77 Compiler
D. L. Wasley, J. Berkman, Introduction to the f77 I/O Library
fpr(1)
, fsplit(1), ld68(1), ar68(1), ranlib68(1) efl(1), ratfor(1), struct(1), cc68(1)

診断

f7768 によって出される診断は、 それ自体が説明になるように作られています。 ローダによってメッセージが出されることもあります。

バグ

約 50,000 行より長いファイルは、 分割してコンパイルしなければなりません。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026