When ROMS was still using MCT version 2.2, I was able to use it without issue. When / if I update my distribution to the new version using MCT 2.6, the same commands (on a 2 x 2.93 GHz Quad-Core Intel Xeon system with OS X 10.5.8 using Absoft Pro Fortran 10.2.1), though, I get an error.
[I sent a similar message to the contact info on the MCT website, but have not heard anything back after a week or so, so I thought I might post here as well in hopes someone may have seen this problem before. If there is a more appropriate place to ask this question, please let me know.]
Previously (MCT 2.2.0; ROMS revision 399), I was able to compile MCT using:
FC=mpif90 CC=mpicc FCFLAGS='-N11 -YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1 -w' ./configure
make
sudo make install
whereas now the same commands (MCT 2.6.0; ROMS revision 448) end with the error:
.
.
.
mpif90 -c -DSYSDARWIN -DCPRABSOFT -O2 -N11 -YEXT_NAMES=LCS -YEXT_SFX=_
-YCFRL=1 -w -p/Users/jcharris/DrWho/trunk/Lib/MCT/mpeu m_Accumulator.F90
Signal: Bus error in IR->WHIRL Conversion phase.
"m_Accumulator.F90": Error: Signal Bus error in phase IR->WHIRL Conversion
-- processing aborted
atmod failed.
make[1]: *** [m_Accumulator.o] Error 1
make: *** [subdirs] Error 2
If I do not use the wrapper mpif90 directly, but instead use:
MPILIBS='-lmpichf90 -lpmpich -lmpich' INCLUDEPATH='-I/usr/local/include' FC=f90 CC=cc CFLAGS='-DpgiFortran' FCFLAGS='-YEXT_NAMES=LCS -s -YEXT_SFX=_' ./configure
the error becomes:
cf90-196 af90fe: INTERNAL INITAVS_, File = m_Accumulator.F90, Line = 898,
Column = 1
Function srch_sym_tbl was called with a token whose length exceeds 32
characters.
f90fe failed.
make[1]: *** [m_Accumulator.o] Error 1
make: *** [subdirs] Error 2
Is anyone familiar with what might be causing this issue? Any help would be greatly appreciated.
MCT 2.6 issue
Re: MCT 2.6 issue
not sure.
but you should be able to use the older version of MCT.
but you should be able to use the older version of MCT.
Re: MCT 2.6 issue
Thanks. If it is of interest to anyone, I have learned that there is an obscure Absoft compiler bug ("with a variable length character return for a used module procedure when the size is determined by nested structures") which is the issue in this case.
Re: MCT 2.6 issue
I've successfully install both MCT 2.2 and 2.6 by gfortran(/pgi/ifort) on UBUNTU x64. But I've just set
FC = gfortran (/pgf90/ifort).
the makefile will automatically find mpif90
FC = gfortran (/pgf90/ifort).
the makefile will automatically find mpif90