nasa / bingo

Apache License 2.0
45 stars 28 forks source link

ImportError: libmpi.so.12: cannot open shared object file: No such file or directory #70

Open folivetti opened 1 year ago

folivetti commented 1 year ago

Hi,

I have installed Bingo with the following steps:

conda create -n bingo python=3.8
conda activate bingo
conda install --channel conda-forge --file requirements.txt
./.build_bingocpp.sh
pip install .

The installation was successful, but when I run pytest tests I get the error message:

ImportError: libmpi.so.12: cannot open shared object file: No such file or directory

This seems to be an issue with conda rather than Bingo itself, there is an easy fix by including in the bash:

export LD_LIBRARY_PATH=~/anaconda3/lib:$LD_LIBRARY_PATH

Maybe it would be good to put that in the README file for anybody else having this problem. Notice also that the mpi seems to work only with Python 3.8, otherwise I cannot even install this library.

folivetti commented 1 year ago

actually setting LD_LIBRARY_PATH like that may break other things if it is unsetted by default. Other alternative is to create a symbolic link to the required libraries into the /usr/local/lib directory

gbomarito commented 1 year ago

Thanks for the issue,

It looks like there were some issues with the mpi4py dependency. I added a new conda_environment.yml (currently only on the smc branch, but bringing everything down to develop/master soon) file that should make this easier, and allow for newer versions of python.

This should work now

conda env create -f conda_environment.yml

bingocpp on its master branch doesn't yet work with new python 3.10-11, this is fixed on its develop branch. Again, I'm in the process of spinning everything down to master, though.