Description
Hi @tobias-liaudat,
I have encountered an issue with the current Galsim installation used by MCCD.
MCCD Issue
When installing MCCD from PyPi,
pip install mccd
Galsim is installed via pip as a dependency. Then when attempting to verify the current version of MCCD,
python -c "import mccd; print(mccd.__version__)"
I get the following errors:
macOS
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/mccd/__init__.py", line 11, in <module>
from .mccd import MCCD, mccd_quickload
File "/Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/mccd/mccd.py", line 22, in <module>
import galsim as gs
File "/Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/galsim/__init__.py", line 112, in <module>
from .position import Position, PositionI, PositionD
File "/Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/galsim/position.py", line 19, in <module>
from . import _galsim
ImportError: dlopen(/Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/galsim/_galsim.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libgalsim.2.2.dylib
Referenced from: /Users/sfarrens/Documents/Library/miniconda3/envs/mccd/lib/python3.7/site-packages/galsim/_galsim.cpython-37m-darwin.so
Reason: image not found
CentOS Linux
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/sfarrens/.conda/envs/mccd/lib/python3.7/site-packages/mccd/__init__.py", line 11, in <module>
from .mccd import MCCD, mccd_quickload
File "/home/sfarrens/.conda/envs/mccd/lib/python3.7/site-packages/mccd/mccd.py", line 22, in <module>
import galsim as gs
File "/home/sfarrens/.conda/envs/mccd/lib/python3.7/site-packages/galsim/__init__.py", line 112, in <module>
from .position import Position, PositionI, PositionD
File "/home/sfarrens/.conda/envs/mccd/lib/python3.7/site-packages/galsim/position.py", line 19, in <module>
from . import _galsim
ImportError: libgalsim.so.2.2: cannot open shared object file: No such file or directory
ShapePipe Issue
This also creates an issue for ShapePipe (in particular on Candide, which uses CentOS Linux). ShapePipe installs Galsim from conda-forge, which a) allows MCCD to work fine but b) creates a conflict between the two Galsim installations on certain systems.
Proposed Solution
I recommend removing Galsim from your requirements.txt
and making an new release of MCCD. This will resolve the ShapePipe issues.
With regards to the stand-alone MCCD installation, I think you can include a note that MCCD requires Galsim but it would be better to install this from source or via Conda.