delocate icon indicating copy to clipboard operation
delocate copied to clipboard

Exclude argument not excluding library

Open Jake-Moss opened this issue 6 months ago • 5 comments

Describe the bug When providing the --exclude argument to exclude libarrow and libarrow_python from the wheel delocate.libsana still claims it is unable to find the library instead of ignoring it.

To Reproduce This fails within our CI using pypa/[email protected], specifically our repair-wheel-command is

[tool.cibuildwheel.macos]
archs = ["x86_64"]
environment = { CC="gcc-12", CXX="g++-12" }
repair-wheel-command = "delocate-wheel -vv --exclude arrow --require-archs {delocate_archs} -w {dest_dir} -v {wheel}"

I've tried plenty of variations of --exclude arrow, --exclude libarrow --exclude libarrow_python and such, the docs and #106 lead me to believe that this should be excluding based on substring presence.

Expected behavior Similarly to auditwheel, the libarrow and libarrow_python should be excluded from the repair attempt.

Wheels used I don't have access to a MacOs system to recreate the wheel but the relevant branch is https://github.com/AequilibraE/aequilibrae/pull/510/ We're attempting to link against the pyarrow Cython and arrow C++ APIs using Cython.

Platform:

  • OS version: macos-12
  • Delocate version: 0.10.7

Additional context I've attached the full logs of a failed CI run, the relevant section is Build wheels or the Build wheels on macos-latest/4_Build wheels.txt file. Here's a small section as well

2024-02-27T00:09:05.7946960Z ERROR:delocate.libsana:
2024-02-27T00:09:05.7947870Z @rpath/libarrow_python.dylib not found:
2024-02-27T00:09:05.7950530Z   Needed by: /private/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp9dd8xlza/wheel/aequilibrae/paths/route_choice.cpython-39-darwin.so
2024-02-27T00:09:05.7951850Z   Search path:
2024-02-27T00:09:05.7952360Z     @loader_path
2024-02-27T00:09:05.7953250Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12/gcc/x86_64-apple-darwin21/12
2024-02-27T00:09:05.7954320Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12/gcc
2024-02-27T00:09:05.7955080Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12
2024-02-27T00:09:05.7957100Z ERROR:delocate.libsana:@rpath/libarrow_python.dylib not found, requested by /private/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp9dd8xlza/wheel/aequilibrae/paths/route_choice.cpython-39-darwin.so
2024-02-27T00:09:05.7958850Z ERROR:delocate.libsana:
2024-02-27T00:09:05.7959460Z @rpath/libarrow.1500.dylib not found:
2024-02-27T00:09:05.7960930Z   Needed by: /private/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp9dd8xlza/wheel/aequilibrae/paths/route_choice.cpython-39-darwin.so
2024-02-27T00:09:05.7962320Z   Search path:
2024-02-27T00:09:05.7962830Z     @loader_path
2024-02-27T00:09:05.7963700Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12/gcc/x86_64-apple-darwin21/12
2024-02-27T00:09:05.7964620Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12/gcc
2024-02-27T00:09:05.7965350Z     /usr/local/Cellar/gcc@12/12.3.0/lib/gcc/12

logs_11438.zip

Jake-Moss avatar Feb 27 '24 00:02 Jake-Moss