[CentOS] dlopen RTD_LAZY and RTLD_GLOBAL
Philippe Piotpiot at nicadd.niu.edu
Fri Dec 13 04:19:28 UTC 2019
All, I use a code which has a python (I use python36) wrapper loading shared libraries. The code worked fine in RHEL 7 but as I was testing it on Centos 8, python cannot import the shared library (the import is done via dlopen with flags set as > sys.setdlopenflags(os.RTLD_LAZY | os.RTLD_GLOBAL) python then does a bunch of imports and most results in a shared library with indefined symbols. Somthing like: > from .w3dpy import * > ImportError: > /usr/local/lib64/python3.6/site-packages/warp/w3dpy.cpython-36m-x86_64-linux-gnu.so: undefined symbol: multigridxyf2_ The codes works fine on Scientific Linux 7 but had the same problem as above on fedora 31. I suspect something changed in the way dlopen is handled on newer linux version but cannot figure out how the code should be modified... Thank you for any help. All the best, -- Philippe.
More information about the CentOS mailing list