On Sep 19, 2008, at 6:51 PM, Brian Harker wrote:
> I have configured openMPI to work with the Intel C (icc) and C++
> (icpc) compilers, as well as the Intel fortran (ifort) compiler, and
> built all the single choice buffer fortran 90 bindings:
> ./configure --prefix=$HOME/openmpi CC=icc CXX=icpc F77=ifort FC=ifort
> --enable-mpi-f90 --with-mpi-f90-size=medium
That all looks correct.
> which works fine. Ok. Onto make all install. Works fine too. Now
> when I try to compile the example hello_f90.f90 program, I get the
> following error:
>> $HOME/openmpi/bin/mpif90 hello_f90.f90 -I$HOME/openmpi/include
FWIW, you shouldn't need that -I, but that *probably* shouldn't be
causing your problem here (note that OMPI's F90 module file is
installed into $prefix/lib, not $prefix/include).
> fortcom: Error: hello_f90.f90, line 12: This module file was not
> generated by any release of this compiler. [MPI]
> use mpi
Two things to check:
1. Are you using exactly the same ifort to build Open MPI as mpif90
is? I assume it is, but it's worth checking. You can run the
following to see exactly what mpif90 will execute:
$HOME/openmpi/bin/mpif90 hello_f90.f90 -I$HOME/openmpi/include --showme
And then run it yourself, ensuring that your $PATH is set to get the
exact same ifort, etc. I'm *guessing* that this is all correct, but
it's worth checking.
2. Check to see if there is another mpi.mod installed somewhere in the
compiler search path that is not the mpi.mod that you expect. For
example, you might want to "rm -rf $HOME/openmpi" to ensure to have a
100% clean Open MPI install. And look elsewhere on the machine for
mpi.mod that may be found in the compiler search patch before the Open
MPI-installed mpi.mod is found.