问题
I have tried installing mpi4py
with:
env MPICC=path/to/openmpi/bin/mpicc conda install -c anaconda mpi4py
But I get this message:
The following NEW packages will be INSTALLED:
mpi anaconda/linux-64::mpi-1.0-mpich
mpi4py anaconda/linux-64::mpi4py-3.0.3-py37h028fd6f_0
mpich anaconda/linux-64::mpich-3.3.2-hc856adb_0
Which seems to show that "MPICC=path/to/openmpi/bin/mpicc" was ignored.
Indeed, after installing mpi4py
with mpich, and trying to run the following simple code with mpirun -n 2 python mpi4pyTest.py
:
from mpi4py import MPI
comm = MPI.COMM_WORLD
size = comm.Get_size()
rank = comm.Get_rank()
print('Hello from processor {} of {}'.format(rank+1,size))
The output is:
Hello from processor 1 of 1
Hello from processor 1 of 1
How can I get conda to link mpi4py
with my own mpicc? Its location is setup in PATH environment variable, as well as LD_LIBARY_PATH.
Best regards.
回答1:
conda install
pulls precompiled binary packages and their dependencies from the repository. If you want mpi4py
built with your own MPI implementation, use pip
instead to install from source. You can use pip
with Conda environments.
Edit for completion
Either uninstall all packages using conda remove
and then install mpi4py
using pip
(specifying the MPICC environment variable to your MPI C complier), OR start with a new environment.
来源:https://stackoverflow.com/questions/61003570/cannot-install-mpi4py-using-conda-and-specify-pre-installed-mpicc-path