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

delocate-wheel doesn't relocate /usr/local/Cellar/giflib, jpeg, libpng #67

Closed
TonyTheTaiga opened this issue Mar 17, 2020 · 1 comment · Fixed by #123
Closed

delocate-wheel doesn't relocate /usr/local/Cellar/giflib, jpeg, libpng #67

TonyTheTaiga opened this issue Mar 17, 2020 · 1 comment · Fixed by #123
Labels

Comments

@TonyTheTaiga
Copy link

Hi, really love this tool! So far it's been working great but ran into a quick hiccup running this on dlib wheels.

@harshithdwivedi
Copy link

Hey @TonyTheTaiga, did you manage to find a fix to this issue?
I'm facing the same right now!

@HexDecimal HexDecimal added the bug label Sep 19, 2021
matthew-brett added a commit that referenced this issue Sep 21, 2021
MRG: Allow for delocating top level modules.

This delocates libraries into one directory per wheel.  I've added a top-level package-less wheel to test with.

Prevents copying duplicate libraries when a wheel has multiple packages.  Fixes #35.

Fixes issues where the module to work on is at the top-level, such as a wheel with no packages.  Generally any current issue where delocate mysteriously doesn't bundle libraries has been fixed.  Fixes #72, fixes #22, fixes #45, fixes #63, fixes #121, fixes #66, fixes #49, fixes #67.

See `_decide_dylib_bundle_directory` for how the folder to use is determined.  I've followed the advice from #72 to use an auditwheel-style name.  Wheels without packages use the folder `{package_name}.dylibs`, wheels with packages will put a `.dylibs` folder in only one of the packages preferring the one that matches the wheel name.  The one directory will hold the dependencies of the entire wheel.

After that the fix was simple:  In `delocate_wheel` call `delocate_path` only once and call it with a `tree_path` that includes the entire wheel.

Since this always collects everything regardless of if a package is found or not.  This will also resolve issues where namespace packages couldn't be delocated.  Fixes #95.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants