Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: [OMPI users] Why compilig in global paths (only) for configuretion files?
From: Paul Kapinos (kapinos_at_[hidden])
Date: 2008-09-08 05:33:13

Hi all!

We are using OpenMPI on an variety of machines (running Linux,
Solaris/Sparc and /Opteron) using couple of compilers (GCC, Sun Studio,
Intel, PGI, 32 and 64 bit...) so we have at least 15 versions of each
release of OpenMPI (SUN Cluster Tools not included).

This shows, that we have to support an complete petting zoo of
OpenMPI's. Sometimes we may need to move things around.

If OpenMPI is being configured, the install path may be provided using
--prefix keyword, say so:

./configure --prefix=/my/love/path/for/openmpi/tmp1

After "gmake all install" in ...tmp1 an installation of OpenMPI may be

Then, say, we need to *move* this Version to an another path, say

Of course we have to set $PATH and $LD_LIBRARY_PATH accordingly (we can
that ;-)

And if we tried to use OpenMPI from new location, we got error message like

$ ./mpicc
Cannot open configuration file
Error parsing data file mpicc: Not found

(note the old installation path used)

That looks for me, that the install path provided with --prefix in
configuration step, is compiled into opal_wrapper executable file and
opal_wrapper works iff the set of configuration files is in this path.
But after move of the OpenMP installation directory the configuration
files aren't there...

An side effect of this behaviour is the certainty that binary
distributions of OpenMPI (RPM's) are not relocatable. That's
uncomfortably. (Actually, this mail is initiated by the fact that Sun
ClusterTools RPM's are not relocatable)

So, does this behavior have an deeper sence I cannot recognise, or maybe
  the configuring of global paths is not needed?

What I mean, is that the paths for the configuration files, which
opal_wrapper need, may be setted locally like ../share/openmpi/***
without affectiong the integrity of OpenMPI. Maybe there were were more
places where the usage of local paths may be needed to allowe movable
(relocable) OpenMPI.

What do you mean about?

Best regards
Paul Kapinos