cibuildwheel
cibuildwheel copied to clipboard
Failures to install patchelf on macOS-latest
Description
Since version v3.1.4 with the addition of the patchelf dependency we have seen CI failures on the macOS-latest image on Azure Pipelines. We've had to pin to v3.1.3 as a workaround.
Pipeline yaml snippet:
- job: build
displayName: 'Build macOS Wheels'
pool:
name: Azure Pipelines
image: macOS-latest
os: macOS
steps:
- checkout: self
- task: UsePythonVersion@0
inputs:
versionSpec: '3.x'
addToPath: true
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
artifactFeeds: 'Artifacts Feed'
- script: |
brew install automake libtool
python3 -m pip install --upgrade pip build setuptools wheel
pip install setuptools wheel cibuildwheel
displayName: 'Install build dependencies'
workingDirectory: $(Build.SourcesDirectory)
Azure Pipeline log (truncated):
2025-10-13T20:56:17.4606120Z Building wheels for collected packages: patchelf
2025-10-13T20:56:17.4695280Z Building wheel for patchelf (pyproject.toml): started
2025-10-13T20:56:36.3787420Z Building wheel for patchelf (pyproject.toml): finished with status 'error'
2025-10-13T20:56:36.3879410Z error: subprocess-exited-with-error
2025-10-13T20:56:36.3925910Z
2025-10-13T20:56:36.4010870Z × Building wheel for patchelf (pyproject.toml) did not run successfully.
2025-10-13T20:56:36.4080820Z │ exit code: 1
2025-10-13T20:56:36.4163670Z ╰─> [129 lines of output]
2025-10-13T20:56:36.4241350Z <string>:9: DeprecationWarning: The 'wheel.bdist_wheel' module has been removed.
2025-10-13T20:56:36.4335980Z Please update your setuptools to v70.1 or later.
2025-10-13T20:56:36.4476530Z If you're explicitly importing 'wheel.bdist_wheel', please update your import to point to 'setuptools.command.bdist_wheel' instead.
2025-10-13T20:56:36.5399000Z
2025-10-13T20:56:36.5559520Z toml section missing PosixPath('pyproject.toml') does not contain a tool.setuptools_scm section
2025-10-13T20:56:36.5700460Z /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-build-env-8pntnuqo/overlay/lib/python3.13/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
2025-10-13T20:56:36.6354860Z !!
2025-10-13T20:56:36.6482770Z
2025-10-13T20:56:36.6609690Z ********************************************************************************
2025-10-13T20:56:36.6685700Z Please consider removing the following classifiers in favor of a SPDX license expression:
2025-10-13T20:56:36.6783730Z
2025-10-13T20:56:36.6856360Z License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
2025-10-13T20:56:36.6945970Z
2025-10-13T20:56:36.7019140Z See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
2025-10-13T20:56:36.7020790Z ********************************************************************************
2025-10-13T20:56:36.7084340Z
2025-10-13T20:56:36.7420450Z !!
2025-10-13T20:56:36.7528140Z self._finalize_license_expression()
2025-10-13T20:56:36.7697410Z
2025-10-13T20:56:36.7780290Z
2025-10-13T20:56:36.7833770Z --------------------------------------------------------------------------------
2025-10-13T20:56:36.7876970Z -- Trying 'Ninja' generator
2025-10-13T20:56:36.7946030Z --------------------------------
2025-10-13T20:56:36.7983990Z ---------------------------
2025-10-13T20:56:36.8033490Z ----------------------
2025-10-13T20:56:36.8034820Z -----------------
2025-10-13T20:56:36.8112250Z ------------
2025-10-13T20:56:36.8151930Z -------
2025-10-13T20:56:36.8182670Z --
2025-10-13T20:56:36.8227240Z Not searching for unused variables given on the command line.
2025-10-13T20:56:36.8268410Z CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
2025-10-13T20:56:36.8324740Z Compatibility with CMake < 3.10 will be removed from a future version of
2025-10-13T20:56:36.8371080Z CMake.
2025-10-13T20:56:36.8430140Z
2025-10-13T20:56:36.8484320Z Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
2025-10-13T20:56:36.8531050Z to tell CMake that the project requires at least <min> but has been updated
2025-10-13T20:56:36.8591360Z to work with policies introduced by <max> or earlier.
2025-10-13T20:56:36.8690270Z
2025-10-13T20:56:36.8733710Z
2025-10-13T20:56:36.8792930Z -- The C compiler identification is AppleClang 17.0.0.17000013
2025-10-13T20:56:36.8842900Z -- Detecting C compiler ABI info
2025-10-13T20:56:36.8881570Z -- Detecting C compiler ABI info - done
2025-10-13T20:56:36.8933030Z -- Check for working C compiler: /usr/bin/cc - skipped
2025-10-13T20:56:36.8977650Z -- Detecting C compile features
2025-10-13T20:56:36.9033180Z -- Detecting C compile features - done
2025-10-13T20:56:36.9107260Z -- The CXX compiler identification is AppleClang 17.0.0.17000013
2025-10-13T20:56:36.9187550Z -- Detecting CXX compiler ABI info
2025-10-13T20:56:36.9251590Z -- Detecting CXX compiler ABI info - done
2025-10-13T20:56:36.9334500Z -- Check for working CXX compiler: /usr/bin/c++ - skipped
2025-10-13T20:56:36.9386630Z -- Detecting CXX compile features
2025-10-13T20:56:36.9434390Z -- Detecting CXX compile features - done
2025-10-13T20:56:36.9491410Z -- Configuring done (13.2s)
2025-10-13T20:56:36.9549630Z -- Generating done (0.0s)
2025-10-13T20:56:36.9589490Z -- Build files have been written to: /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_cmake_test_compile/build
2025-10-13T20:56:36.9648670Z --
2025-10-13T20:56:36.9756470Z -------
2025-10-13T20:56:36.9857240Z ------------
2025-10-13T20:56:36.9963200Z -----------------
2025-10-13T20:56:37.0033850Z ----------------------
2025-10-13T20:56:37.0112640Z ---------------------------
2025-10-13T20:56:37.0168370Z --------------------------------
2025-10-13T20:56:37.0245000Z -- Trying 'Ninja' generator - success
2025-10-13T20:56:37.0304110Z --------------------------------------------------------------------------------
2025-10-13T20:56:37.0364250Z
2025-10-13T20:56:37.0430510Z Configuring Project
2025-10-13T20:56:37.0491370Z Working directory:
2025-10-13T20:56:37.0552430Z /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-build
2025-10-13T20:56:37.0625010Z Command:
2025-10-13T20:56:37.0683850Z /usr/local/bin/cmake /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8 -G Ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-install -DPYTHON_VERSION_STRING:STRING=3.13.7 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-build-env-8pntnuqo/overlay/lib/python3.13/site-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/Library/Frameworks/Python.framework/Versions/3.13/bin/python -DPYTHON_INCLUDE_DIR:PATH=/Library/Frameworks/Python.framework/Versions/3.13/include/python3.13 -DPYTHON_LIBRARY:PATH=/Library/Frameworks/Python.framework/Versions/3.13/lib/libpython3.13.dylib -DPython_EXECUTABLE:PATH=/Library/Frameworks/Python.framework/Versions/3.13/bin/python -DPython_ROOT_DIR:PATH=/Library/Frameworks/Python.framework/Versions/3.13 -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/Library/Frameworks/Python.framework/Versions/3.13/include/python3.13 -DPython3_EXECUTABLE:PATH=/Library/Frameworks/Python.framework/Versions/3.13/bin/python -DPython3_ROOT_DIR:PATH=/Library/Frameworks/Python.framework/Versions/3.13 -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/Library/Frameworks/Python.framework/Versions/3.13/include/python3.13 -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=15.0 -DCMAKE_OSX_ARCHITECTURES:STRING=x86_64 -DCMAKE_BUILD_TYPE:STRING=Release
2025-10-13T20:56:37.0759670Z
2025-10-13T20:56:37.0816900Z Not searching for unused variables given on the command line.
2025-10-13T20:56:37.0879200Z CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
2025-10-13T20:56:37.0938590Z Compatibility with CMake < 3.10 will be removed from a future version of
2025-10-13T20:56:37.0990570Z CMake.
2025-10-13T20:56:37.1027320Z
2025-10-13T20:56:37.1071580Z Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
2025-10-13T20:56:37.1112900Z to tell CMake that the project requires at least <min> but has been updated
2025-10-13T20:56:37.1137470Z to work with policies introduced by <max> or earlier.
2025-10-13T20:56:37.1176320Z
2025-10-13T20:56:37.1204070Z
2025-10-13T20:56:37.1240140Z -- The C compiler identification is AppleClang 17.0.0.17000013
2025-10-13T20:56:37.1272530Z -- The CXX compiler identification is AppleClang 17.0.0.17000013
2025-10-13T20:56:37.1314710Z -- Detecting C compiler ABI info
2025-10-13T20:56:37.1344770Z -- Detecting C compiler ABI info - done
2025-10-13T20:56:37.1380540Z -- Check for working C compiler: /usr/bin/cc - skipped
2025-10-13T20:56:37.1410430Z -- Detecting C compile features
2025-10-13T20:56:37.1443450Z -- Detecting C compile features - done
2025-10-13T20:56:37.1472960Z -- Detecting CXX compiler ABI info
2025-10-13T20:56:37.1490690Z -- Detecting CXX compiler ABI info - done
2025-10-13T20:56:37.1549840Z -- Check for working CXX compiler: /usr/bin/c++ - skipped
2025-10-13T20:56:37.1579370Z -- Detecting CXX compile features
2025-10-13T20:56:37.1603750Z -- Detecting CXX compile features - done
2025-10-13T20:56:37.1621190Z -- Configuring done (2.8s)
2025-10-13T20:56:37.1640630Z -- Generating done (0.0s)
2025-10-13T20:56:37.1671980Z -- Build files have been written to: /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-build
2025-10-13T20:56:37.1702360Z [1/10] Creating directories for 'build_patchelf'
2025-10-13T20:56:37.1730060Z [2/10] No download step for 'build_patchelf'
2025-10-13T20:56:37.1758000Z [3/10] No update step for 'build_patchelf'
2025-10-13T20:56:37.1790670Z [4/10] Performing patch step for 'build_patchelf'
2025-10-13T20:56:37.1825570Z FAILED: [code=2] build_patchelf-prefix/src/build_patchelf-stamp/build_patchelf-patch /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-build/build_patchelf-prefix/src/build_patchelf-stamp/build_patchelf-patch
2025-10-13T20:56:37.1834160Z cd /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/src/patchelf-upstream && ./bootstrap.sh && /usr/local/bin/cmake -E touch /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-build/build_patchelf-prefix/src/build_patchelf-stamp/build_patchelf-patch
2025-10-13T20:56:37.1864750Z autoreconf: export WARNINGS=all
2025-10-13T20:56:37.1886780Z autoreconf: Entering directory '.'
2025-10-13T20:56:37.1912460Z autoreconf: configure.ac: not using Gettext
2025-10-13T20:56:37.1947250Z autoreconf: running: aclocal --force
2025-10-13T20:56:37.1985320Z Can't exec "aclocal": No such file or directory at /usr/local/Cellar/autoconf/2.72/share/autoconf/Autom4te/FileUtils.pm line 299.
2025-10-13T20:56:37.2016850Z autoreconf: error: aclocal failed with exit status: 2
2025-10-13T20:56:37.2046410Z ninja: build stopped: subcommand failed.
2025-10-13T20:56:37.2071420Z Traceback (most recent call last):
2025-10-13T20:56:37.2099110Z File "/private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-build-env-8pntnuqo/overlay/lib/python3.13/site-packages/skbuild/setuptools_wrap.py", line 668, in setup
2025-10-13T20:56:37.2156670Z cmkr.make(make_args, install_target=cmake_install_target, env=env)
2025-10-13T20:56:37.2196930Z ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-10-13T20:56:37.2226850Z File "/private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-build-env-8pntnuqo/overlay/lib/python3.13/site-packages/skbuild/cmaker.py", line 696, in make
2025-10-13T20:56:37.2259940Z self.make_impl(clargs=clargs, config=config, source_dir=source_dir, install_target=install_target, env=env)
2025-10-13T20:56:37.2261590Z ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-10-13T20:56:37.2323000Z File "/private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-build-env-8pntnuqo/overlay/lib/python3.13/site-packages/skbuild/cmaker.py", line 741, in make_impl
2025-10-13T20:56:37.2424470Z raise SKBuildError(msg)
2025-10-13T20:56:37.2453900Z
2025-10-13T20:56:37.2501490Z An error occurred while building with CMake.
2025-10-13T20:56:37.2528140Z Command:
2025-10-13T20:56:37.2556830Z /usr/local/bin/cmake --build . --target install --config Release --
2025-10-13T20:56:37.2607290Z Install target:
2025-10-13T20:56:37.2647530Z install
2025-10-13T20:56:37.2675450Z Source directory:
2025-10-13T20:56:37.2694350Z /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8
2025-10-13T20:56:37.2709860Z Working directory:
2025-10-13T20:56:37.2738680Z /private/var/folders/5k/fq5ptf2906bgfn1krb78bmj00000gn/T/pip-install-ogicj0rp/patchelf_0eb06125fe0c4b09a1a2467950bbc0d8/_skbuild/macosx-15.0-x86_64-3.13/cmake-build
2025-10-13T20:56:37.2810620Z Please check the install target is valid and see CMake's output for more information.
2025-10-13T20:56:37.2882140Z
2025-10-13T20:56:37.2919770Z [end of output]
2025-10-13T20:56:37.2953580Z
2025-10-13T20:56:37.2990600Z note: This error originates from a subprocess, and is likely not a problem with pip.
2025-10-13T20:56:37.3009920Z ERROR: Failed building wheel for patchelf
2025-10-13T20:56:37.3024510Z Failed to build patchelf
2025-10-13T20:56:37.3051120Z error: failed-wheel-build-for-install
2025-10-13T20:56:37.3072730Z
2025-10-13T20:56:37.3085510Z × Failed to build installable wheels for some pyproject.toml based projects
2025-10-13T20:56:37.3120180Z ╰─> patchelf
Build log
No response
CI config
No response
I see a macOS wheel here: https://pypi.org/project/patchelf/#files Is there some environment variable set forcing source builds? Also, you don't need all those dependencies, some are even installed twice. wheel is no longer used by setuptools, and you don't need setuptools (or any other dependencies) to run cibuildwheel.