conda-forge/stir-feedstock

libparallelproj mismatch

Opened this issue · 7 comments

Comment:

after installing a fresh environment as in

mamba create -n stirdev  -c conda-forge/label/stir_dev stir
mamba activate stirdev

I get

$ OSMAPOSL
OSMAPOSL: error while loading shared libraries: libparallelproj_c.so.1.7.1: cannot open shared object file: No such file or directory

checking the content of the environment I see

$ ls -l /home/sirfuser/mambaforge/envs/stirdev/lib/libparallelproj_c.so*
lrwxrwxrwx 1 sirfuser sirfuser    26 Jan 30 14:53 /home/sirfuser/mambaforge/envs/stirdev/lib/libparallelproj_c.so -> libparallelproj_c.so.1.7.3
-rwxrwxr-x 3 sirfuser sirfuser 69848 Jan 26 14:21 /home/sirfuser/mambaforge/envs/stirdev/lib/libparallelproj_c.so.1.7.3

Note the version mismatch.

@gschramm does this mean we need to pin the run-time version to the build-version somehow?

can temporarily be fixed by

$ mamba install libparallelproj=1.7.1

exact version will depend on which build is installed of course, but the error message will tell you.

Note sure. What is the behavior you would expect? If STIR is build with libparallelproj 1.7.1. it should run with 1.7.3 as well right? If we need pinning, I guess they should go in the STIR conda recipe?

What is the behavior you would expect?

that it works 😄 . At present, we get a run-time error.

If STIR is build with libparallelproj 1.7.1. it should run with 1.7.3 as well right?

yes, in principle, but it fails at the loader stage, as it wants a different .so version. (I guess it doesn't refer to *.so, but *.so.1.7.1).

If we need pinning, I guess they should go in the STIR conda recipe?

yes! but how? Maybe @casperdcl can help.

If a package is not pinned in conda-forge-pinning, then the pinning needs to be done manually. If the package is a C/C++ library with a C/C++ API that is consumed and linked to by other libraries, then that package is a candidate to be added to conda-forge-pinning. Please open an issue in conda-forge-pinning-feedstock for discussion.

might therefore be a libparallelproj issue

Request to add libparallelproj to conda-forge-pinning-feedstock is submitted conda-forge/conda-forge-pinning-feedstock#5447