selden wrote:Those error messages all seem to point to perfectly valid Fortran-77 constructs -- line continuations, debug comments, etc. They kept the base name, but the modern version of the language has only a passing resemblance to its antecedents. That's why the full names of the language variants have a year as the suffix -- you have to know which you're using.
Selden,
after being back from Italy (with erratic online connection), I now had a look into your mcl2stc.f code. Your used syntax is strange, indeed, and does not conform to any of the
standardized FORTRAN 95, 90, 2008, 2003,
77 layouts (see e.g.
http://gcc.gnu.org/wiki/GFortranStandards).
The main reason for the above errors with gfortran | g77 is that you misplaced your continuation character '1' by one column! In (72 column) fixed layout format of FORTRAN77 that you seem to have adopted mostly, the continuation character is required to be in column 6, while commands start in column >= 7. Moreover, your debug character 'd' is NOT allowed in standard F77. In gfortran it may be included via the option -fd-lines-as-code.
The build command that I use is trivial.
f77 mcl2stc.f -o mcl2stc
Judging from your quoted f77 command, you used the oldest and outdated way of invoking FORTRAN compilation! The command f77 is merely a bash shell script e.g. in CYGWIN that makes compiling Fortran programs somewhat easier, by serving as an interface to the 'prehistoric'
f2c/gcc combination. The f2c command is REALLY out!
Instead, the GNU development line originally comprised the g77 compiler which is not being further developed since quite a while. One main reason was the basic limitation of g77 to FORTRAN77. Under Windows, it may still be used either via the CYGWIN layer or via g77-mingw32.
The modern and meanwhile standard GNU successor that includes all modern Fortran flavors up to FORTRAN95 is
gfortran.
It honors many option flags that allow to easily switch between various syntax standards. The easiest switch is provided by -std=f95, f2008, f2003, gnu, legacy. FORTRAN77 is always recognized as a code subset. Notably
gfortran is known to work on...
x86-linux, x86_64-linux Windows (x86, cygwin and mingw; amd64-mingw)
MacOS X, Intel and PowerPC (powerpc-darwin and i386-darwin)
x86-freebsd, amd64-freebsd, x86-openbsd
IA64-linux, IA64-hpux
sparc-solaris, i386-solaris
alpha-linux, Tru64
powerpc-aix
mips-irix, mips-linux
hppa-linux, hppa-hpux
s390-linux
powerpc-linux
sh4-linux
sparc-linux
Since CYGWIN offers gfortran as well, it is hard to see why you adopted such an untransparent syntax mix in your simple program mcl2stc for reformatting the mcluster output. Notably, since mcluster_sse compiles perfectly with gfortran and involves a classical F77 code style! Of course I made sure that mcluster_sse also compiles under gfortran@CYGWIN.
Fridger
PS.
Let me know if you are also interested in a number of (critical) comments about using MCluster-generated stars for modeling globular clusters in Celestia.