AEI-ACR / pygsl_lite

A minimal wrapper for GSL based on the pygsl library
GNU General Public License v2.0
1 stars 1 forks source link

Unable to run on CentOS #1

Open raffienficiaud opened 1 year ago

raffienficiaud commented 1 year ago

Dear Serguei,

The following line prevents from linking the libraries with libgslcblas .

https://github.com/SergeiOssokine/pygsl_lite/blob/2bef0e9129190dd8101e8cb59911fc1946f872d0/gsl_dist/gsl_Location.py#L113

Doing a simple

from pygsl_lite import spline

yields this error:

File "/usr/local/lib64/python3.9/site-packages/pygsl_lite/__init__.py", line 25, in <module>
    import pygsl_lite.errno
ImportError: /lib64/libgsl.so.23: undefined symbol: cblas_ctrmv

The symbol cblas_ctrmv is inside the library gslcblas shipped with the package gsl on that distro:

$ nm -D /lib64/libgslcblas.so  | grep cblas_ctrmv
0000000000024280 T cblas_ctrmv

I can submit a patch but before I wanted to hear from you if there is a reason to use the libs explicitely without cblas. Thank you

SergeiOssokine commented 1 year ago

Hi Raffi,

As far as I can remember, this change was added to prevent overlinking errors when building the conda recipe for pygsl_lite at a suggestion of a conda expert, in this commit.

I have not experienced this issue before, is this for some custom environment?

raffienficiaud commented 1 year ago

Thanks @SergeiOssokine . As far as I can tell, the environment is official NVIDIA docker image rockylinux8. Installing v0.1.2 (commit just before the one you refered to) solves the issue for them.

Do you recall the errors on the conda recipes or do you have a pointer to the conversation?

SergeiOssokine commented 1 year ago

Unfortunately the failed Azure Pipeline build (used by conda-forge) is now gone. The original conversation is here: https://github.com/conda-forge/staged-recipes/pull/22405#discussion_r1157371670