LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2003-06-02 21:33:17


On Mon, 2 Jun 2003 Nils.Stritzel_at_[hidden] wrote:

> I am using lam-mpi on linuxcluster running Suse 7.2. Recently I updated
> the Intel Fortran Compiler from version 5 to version 7, which broke my
> lam-mpi (version 6.5.6) installation. That was why I updated lam to the
> most recent version 6.5.9.

Did you see today's post from Konrad Karczewski?

  http://www.lam-mpi.org/MailArchives/lam/msg06058.php

> I built the whole thing from source using:
> ./configure --prefix=/opt/lam
> --with-hf77=/opt/intel/compiler70/ia32/bin/ifc

Note that this is not quite right. I think you meant
"--with-fc=/opt/intel/compiler70/ia32/bin/ifc". You can also specify
--with-rsh="ssh -x".

> make
> make install
>
> furthermore I set the following environment variable in a script :
> export LAMRSH="ssh -x"

If you use the --with-rsh option, above, you won't need to set LAMRSH.

> export LAMHOME="/opt/lam"

There is no need to set LAMHOME here, especially since you're not using it
consistently for PATH and MANPATH, below.

> export PATH="$LAMHOME/bin:$PATH"
> export MANPATH="$MANPATH:/opt/lam/man"

My recommendation would be to just set PATH and MANPATH directly:

export PATH="/opt/lam/bin:$PATH"
export MANPATH="$MANPATH:/opt/lam/man"

That should be all you need.

> When try to call it with a .f90 file I get :

Also note that the name "hf77" is now deprecated. The name "mpif77" is
preferred (although they are both synonomous, mpif77 is more descriptive
of what it is doing).

> hf77 dlcca_mpi.f90
> /usr/i486-suse-linux/bin/ld:dlcca_mpi.f90: file format not recognized;
> treating
> as linker script
> /usr/i486-suse-linux/bin/ld:dlcca_mpi.f90:1: parse error
> collect2: ld returned 1 exit status
>
> with f77 file I get:
> hf77 code125.f -o try_mpi
> /usr/lib/gcc-lib/i486-suse-linux/2.95.3/libg2c.a(open.o): In function
> `f_open': open.o(.text+0x4da): the use of `tempnam' is dangerous, better use
> `mkstemp'
>
> which works despite the warning.
>
> So now mpi won't accept f90 files and the compiler considers a file
> ending in .f a Fortran 77 files and won't compile it.

This unfortunately sounds like an Intel compiler issue, not a LAM/MPI
issue. Remember that mpif77 (hf77) simply add a few flags to the command
line and then turn around and invoke the back-end compiler (e.g., -I, -L,
etc.). You can use the "-showme" flag to show that mpif77 would have
invoked. For example:

  mpif77 dlcca_mpi.f90 -showme

You might want to try writing a simple non-MPI fortran 90 compiler and try
invoking the intel compiler against it and see if it compiles (I'm not too
familiar with the intel compilers to know if they support fortran 90 or
not, or if you need to use an alternate invocation name to get the f90
compiler).

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/