Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
29285 Discussions

trouble compiling mpich-1.2.5.2 with IFORT 8.0

brianp
Beginner
895 Views
I'm trying to compile mpich 1.2.5.2 with the IFORT 8.0 on Red Hat 7.3. I use the following commands...
./configure -prefix=/opt/intel_mpich --enable-f90modules --with-arch=LINUX -c++=/opt/intel/bin/icc -cc=/opt/intel/bin/icc -fc=/opt/intel/bin/ifort -f90=/opt/intel/bin/ifort
then we make and get the following errors...
making Fortran 90 module for MPI
Types are integer integer1 integer2 integer8 real real16 real8 complex complex16 logical logical1 logical2 logical8
/opt/intel/bin/ifort -c -I../include mpi_constants.f90
ar cr /root/mpich-1.2.5.2/lib/libmpichf90.a mpi_constants.o
/opt/intel/bin/ifort -c mpi1.f90
ar cr /root/mpich-1.2.5.2/lib/libmpichf90.a mpi1.o
/opt/intel/bin/ifort -c mpi2.f90
fortcom: Error: mpi2.f90, line 146: This is an incorrect value for a kind type parameter in this context. [KIND]
INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE
................^
fortcom: Error: mpi2.f90, line 161: This is an incorrect value for a kind type parameter in this context. [KIND]
INTEGER(KIND=MPI_ADDRESS_KIND) ATTRIBUTE_VAL
................^
fortcom: Error: mpi2.f90, line 175: This is an incorrect value for a kind type parameter in this context. [KIND]
INTEGER(KIND=MPI_ADDRESS_KIND) ATTRIBUTE_VAL
................^
fortcom: Error: mpi2.f90, line 196: This is an incorrect value for a kind type parameter in this context. [KIND]
INTEGER (KIND=MPI_ADDRESS_KIND) EXTRA_STATE
.................^
fortcom: Error: mpi2.f90, line 229: This is an incorrect value for a kind type parameter in this context. [KIND]
INTEGER(KIND=MPI_ADDRESS_KIND) EXTRA_STATE
................^

... etc ...

fortcom: Severe: Too many errors, exiting
compilation aborted for mpi2.f90 (code 1)
make[2]: *** [mpi2.mod] Error 1
make[1]: [mpi-modules] Error 2 (ignored)
With the exception of this one module everything else compiled fine.
Any ideas?
0 Kudos
4 Replies
TimP
Honored Contributor III
895 Views
I haven't seen anyone run such a recent version of mpich with ifort on such an old version of linux. Not to say it can't be done, but MPI versions tend to be limited in the range of distros they work with.
0 Kudos
robert_duke
Beginner
895 Views
I had the same problem on RH Enterprise Linux 3 WS.
0 Kudos
TimP
Honored Contributor III
895 Views
Doesn't config.log shed some light on what happened when configure tried to figure out the KIND it wants? We may hope that EL3 is about to settle down, with update 1 and the like, but I haven't succeeded in getting a fully stable installation of it yet.I believe the ifort 8.0.040 version was the firstwhich mayinclude the correct libraries for EL3 IA32.
0 Kudos
gandalfur
Beginner
895 Views
This seems to be a problem in mpich-1.2.5.2. I had the same problem and my solution was the following:

After configure one needs to fix the mpif.h files mpich-1.2.5.2/include/mpif.h and mpich-1.2.5.2/src/fortran/include/mpif.h

Find the lines:

INTEGER MPI_ADDRESS_KIND, MPI_OFFSET_KIND
PARAMETER (MPI_ADDRESS_KIND=0)
PARAMETER (MPI_OFFSET_KIND=0)

and change them to

INTEGER MPI_ADDRESS_KIND, MPI_OFFSET_KIND
PARAMETER (MPI_ADDRESS_KIND=4)
PARAMETER (MPI_OFFSET_KIND=4)

i.e. change 0 to 4. After this you can make, and you should get fully functional f90 modules.

Hope this helps
0 Kudos
Reply