・cygwinとg77のバージョンが不明。
「cygwin_NT5.0」のは「cygwin」を NT5.0=「Windows 2000」で使っていることを
示しています。肝心のcygwinと、g77のバージョンは示すべきでしょう。
例えば次のコマンドを実行すればわかります。
$ uname -a
$ cygcheck -c cygwin gcc-g77
$ g77 --version
また、この掲示板の上のリンクの「HOME」の「質問前に読んで欲しいFAQ」も
読んでみてください。
・「undefined reference」について
| /usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libfrtbegin.a(frtbegin.o)
| (.text+0x3e):main.c: undefined reference to ` _MIAN_'
念のため、手元でfrtbegin.oの内容を調べましたが、「_MIAN_」ってエントリは
見あたりませんでした。
$ ar x /usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libfrtbegin.a frtbegin.o
$ objdump -t frtbegin.o
・「他人のPC」の環境
「他人のPC」も Cygwinのg77を使っているなら問題の切り分けに役に立ちます。
もしそうなら、そのバージョンも示してください。
あるいは、他のOSであっても、g77を使っているならバージョンを示すと切り分けに
役立ちます。(例えば、特定のバージョンのg77のみに不具合がある、とかの場合)
・ちなみに
手元の以下の環境で、ごく簡単なプログラムを試したところ、
コンパイルと実行ができました。
OS : Windows XP Professional SP1
$ uname -a
CYGWIN_NT-5.1 xiao 1.5.9(0.112/4/2) 2004-03-18 23:05 i686 unknown unknown Cygwin
$ cygcheck -c cygwin gcc-g77
cygwin 1.5.9-1 OK
gcc-g77 3.3.1-3 OK
$ g77 --version
GNU Fortran (GCC) 3.3.1 (cygming special)
(以下略)
試したプログラム
C Hello World in Fortran
PROGRAM HELLO
WRITE (*,100)
STOP
100 FORMAT (' Hello World! ' /)
END
実行結果
$ g77 -o hello hello.f
$ ./hello
Hello World!
|