Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support runtime-loaded libraries via setuptools Extension runtime_library_dirs argument? #375

Open
SeanDS opened this issue Mar 3, 2022 · 0 comments

Comments

@SeanDS
Copy link

SeanDS commented Mar 3, 2022

I know the README states that auditwheel is intended to handle only dependencies linked at compile time, not those loaded via e.g. dlopen, but setuptools supports a runtime_library_dirs argument to Extension that I think could be used to support runtime loaded libraries too.

As far as I understand, runtime_library_dirs is a list of directories containing shared objects loaded at runtime by the project's extensions. I think in principle it would be possible for auditwheel to copy any of the libraries in these paths that the project's extensions use into the wheel, then update their RPATHs.

I think name mangling would have to be disabled for such libraries, since runtime-loaded library names are hard-coded (i.e. calls to dlopen("mylibrary.so"); presumably can't be rewritten to dlopen("mylibrary-abcdef.so.0.0.1"); after compilation?).

Is there any reason why this wouldn't work?

(Kinda related to #365)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant