I'm building a library wrapping c++ code on macos with Github Action.
In the cp38-macosx_arm64 (os: macos-14) build, the "Building wheel" step went through, but the "Repairing wheel" step failed with
delocate.libsana.DelocationError: Failed to find any binary with the required architecture: 'x86_64'
The issue only occurs on cp38 where cp39-macosx_arm64 went through without problems.
Here's the log for "building wheel", which passed but seemed to produce a x86_64 wheel for an arm64 build:
+ python -m pip wheel /Users/runner/work/py_jwt_cpp/py_jwt_cpp --wheel-dir=/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/built_wheel --no-deps
Processing /Users/runner/work/py_jwt_cpp/py_jwt_cpp
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Building wheels for collected packages: py_jwt_cpp
Building wheel for py_jwt_cpp (pyproject.toml): started
Building wheel for py_jwt_cpp (pyproject.toml): still running...
Building wheel for py_jwt_cpp (pyproject.toml): finished with status 'done'
Created wheel for py_jwt_cpp: filename=py_jwt_cpp-0.1.0-cp38-cp38-macosx_14_0_x86_64.whl size=66406 sha256=3a67c0ae39221cb61d1971c5e9e082752298ebf34dd2abe2a18b95f34350f363
Stored in directory: /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/pip-ephem-wheel-cache-cankgeva/wheels/24/a5/8d/764d337a233749b5593943775402d69ea2e[128](https://github.com/ns-yanghsing/py_jwt_cpp/actions/runs/11810912790/job/32903660483#step:6:132)85755535c006
Successfully built py_jwt_cpp
And here's the "Repairing" log looking for an x86_64 one for an arm64 build:
+ delocate-wheel --require-archs arm64 -w /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/repaired_wheel -v /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/built_wheel/py_jwt_cpp-0.1.0-cp38-cp38-macosx_14_0_x86_64.whl
INFO:delocate.delocating:Copying library /opt/homebrew/Cellar/openssl@3/3.3.2/lib/libssl.3.dylib to py_jwt_cpp/.dylibs/libssl.3.dylib
INFO:delocate.delocating:Copying library /opt/homebrew/Cellar/openssl@3/3.3.2/lib/libcrypto.3.dylib to py_jwt_cpp/.dylibs/libcrypto.3.dylib
INFO:delocate.delocating:Modifying install name in py_jwt_cpp/jwt_cpp.cpython-38-darwin.so from /opt/homebrew/opt/openssl@3/lib/libssl.3.dylib to @loader_path/.dylibs/libssl.3.dylib
INFO:delocate.delocating:Modifying install name in py_jwt_cpp/jwt_cpp.cpython-38-darwin.so from /opt/homebrew/opt/openssl@3/lib/libcrypto.3.dylib to @loader_path/.dylibs/libcrypto.3.dylib
INFO:delocate.delocating:Modifying install name in py_jwt_cpp/.dylibs/libssl.3.dylib from /opt/homebrew/Cellar/openssl@3/3.3.2/lib/libcrypto.3.dylib to @loader_path/libcrypto.3.dylib
Fixing: /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/built_wheel/py_jwt_cpp-0.1.0-cp38-cp38-macosx_14_0_x86_64.whl
Traceback (most recent call last):
File "/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/build/venv/bin/delocate-wheel", line 8, in <module>
sys.exit(main())
File "/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/build/venv/lib/python3.8/site-packages/delocate/cmd/delocate_wheel.py", line 116, in main
copied = delocate_wheel(
File "/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/build/venv/lib/python3.8/site-packages/delocate/delocating.py", line 1090, in delocate_wheel
out_wheel_fixed = _check_and_update_wheel_name(
File "/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/build/venv/lib/python3.8/site-packages/delocate/delocating.py", line 914, in _check_and_update_wheel_name
new_name, problematic_files = _calculate_minimum_wheel_name(
File "/private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/build/venv/lib/python3.8/site-packages/delocate/delocating.py", line 848, in _calculate_minimum_wheel_name
raise DelocationError(
delocate.libsana.DelocationError: Failed to find any binary with the required architecture: 'x86_64'
Error: Command delocate-wheel --require-archs arm64 -w /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/repaired_wheel -v /private/var/folders/g6/rgtlsw6n123b0gt5483s5_cm0000gn/T/cibw-run-b894xoq9/cp38-macosx_arm64/built_wheel/py_jwt_cpp-0.1.0-cp38-cp38-macosx_14_0_x86_64.whl failed with code 1.
Description
I'm building a library wrapping c++ code on macos with Github Action. In the
cp38-macosx_arm64
(os: macos-14) build, the "Building wheel" step went through, but the "Repairing wheel" step failed withThe issue only occurs on cp38 where
cp39-macosx_arm64
went through without problems.Here's the log for "building wheel", which passed but seemed to produce a
x86_64
wheel for anarm64
build:And here's the "Repairing" log looking for an
x86_64
one for anarm64
build:And here's the github flow config:
Please see the build link here for details. Thanks!
Build log
No response
CI config
No response