Hi,

I am building a new package against mpi-default-dev.

If I understand correctly, mpi-default-dev just pulls either openmpi- dev or lam-dev (to be replaced soon by mpich2-dev...) and trusts the alternatives system to install the right links as mpicc etc.

I think that this currently does not work reliably since mpich2 has the same priority (40) as openmpi for the alternatives system. If package A build-depends on mpi-default-dev and is built on a machine where mpich2-dev has been installed after openmpi-dev, package A will be built against mpich2, not against openmpi.

This can be resolved in several manners:
- mpi-default-dev could conflict against all the non-default MPI implementations;
- openmpi could (should) have a higher priority than mpich2;
- my preferred solution: mpi-defaut-dev could provide links like mpicc.mpi-defaults that would be the commands actually used when building. They could also be installed as alternatives with a very high priority, but I think it is safer to directly use the fully qualified name "mpicc.mpi-default".

I do not (yet) file a bug report because the bug may well lie in my understanding, so I prefer to discuss the matter here first.

For the time being, I will try to make my debian/rules use mpicc.openmpi if it is available and fall back to mpicc, since the default is openmpi wherever it can be installed. mpicc may be a link to mpicc.mpich2 instead of mpicc.lam in some circumstances.

Best regards, Thibaut.


--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to