【このメモは2006年現在の授業用の注意を記録として残してあるだけで、 2015年現在有効な知識ではありません。】
Unix上で、Fortran 77 (1977年標準のFortran言語)のコンパイラを起動する
コマンドは、ふつう、f77
です。
Fortranのソースプログラムhello.f
があるとすれば、
f77 hello.fで、
a.out
が作られ、
./a.outで実行できます。 しかし、現在、CNSのSunのマシンには、
f77
あるいはg77
(GNU版のf77)のコマンドが
入っていないようです。
【特別教室(zux001など)およびccx01 (別名ccx00)のLinuxマシンには
g77
が入っており、
f77
の名前でもこれが呼ばれますので、
ここで述べる対策は必要ありません。】
そこで、FortranからCに翻訳するソフトウェアf2c
(Bell研究所からソースプログラムで公開されている)と、
f2c
とcc
(実体はgcc
, GNU版のCコンパイラ)を
続けて呼び出すシェルスクリプトf77
を、
地球環境観測の教材用のディスクに入れました。
ログインシェルとしてtcsh
を使っている場合、
あらかじめ
source /pub/sfc/earthobs/prog/cshsun/f2cを実行すれば、
f77
が使えるようにしてあります。
なお、上のsource ...
の手続きは、.cshrc
に
alias usesun source /pub/sfc/earthobs/prog/cshsun/use $*と設定しておけば、
usesun f2c
でできます。
ログインシェルがbash
, ksh
などの場合、すみませんが
/pub/sfc/earthobs/prog/cshsun/f2c
,
(cshのsetenvコマンドを使っている)を見て対応する環境変数を
設定してください。
CNSのSunマシンでも、cc
がうまく動かないものが
あるかもしれません(2001年12月20日現在、κ23教室のものがそうでした)。
そのようなマシンでは、現在入れてあるシェルスクリプトf77
も
正常に動きません。
その場合は、ccz01
などにリモートログインすれば
作業できます。
f2c
やg77
が受け入れるFortran言語の文法は、
1977年標準(JISでは1982年)で、
残念ながら、1990年・95年の標準(現在のJIS)ではありません。
しかし、行番号なしのDO
文・END DO
など、
一部の90・95標準の機能は使うことができます。
わたしが書く例文では、基本的には77標準に従っていますが、
行番号なしのDO
・END DO
は積極的に使う
ことにしています。