Skip to content

pip install breaks on python 3.11 and 3.12 #267

@karlglazebrook

Description

@karlglazebrook

It seems the standard pip install is broken on 3.11 and 3.12. Log below.

python 3.10 works fine. (This is using conda to create a new environment for each test case)

Here is the 3.11 log:

pip install imexam                 
Collecting imexam
  Using cached imexam-0.9.1.tar.gz (21.4 MB)
  Preparing metadata (setup.py) ... done
Collecting numpy>=1.14 (from imexam)
  Downloading numpy-2.3.4-cp311-cp311-macosx_14_0_arm64.whl.metadata (62 kB)
Collecting scipy>=0.18 (from imexam)
  Downloading scipy-1.16.3-cp311-cp311-macosx_14_0_arm64.whl.metadata (62 kB)
Collecting astropy>=3.0 (from imexam)
  Downloading astropy-7.1.1-cp311-cp311-macosx_11_0_arm64.whl.metadata (10 kB)
Collecting matplotlib (from imexam)
  Downloading matplotlib-3.10.7-cp311-cp311-macosx_11_0_arm64.whl.metadata (11 kB)
Collecting pyerfa>=2.0.1.1 (from astropy>=3.0->imexam)
  Using cached pyerfa-2.0.1.5-cp39-abi3-macosx_11_0_arm64.whl.metadata (5.7 kB)
Collecting astropy-iers-data>=0.2025.9.29.0.35.48 (from astropy>=3.0->imexam)
  Using cached astropy_iers_data-0.2025.10.27.0.39.10-py3-none-any.whl.metadata (3.4 kB)
Collecting PyYAML>=6.0.0 (from astropy>=3.0->imexam)
  Downloading pyyaml-6.0.3-cp311-cp311-macosx_11_0_arm64.whl.metadata (2.4 kB)
Collecting packaging>=22.0.0 (from astropy>=3.0->imexam)
  Using cached packaging-25.0-py3-none-any.whl.metadata (3.3 kB)
Collecting contourpy>=1.0.1 (from matplotlib->imexam)
  Downloading contourpy-1.3.3-cp311-cp311-macosx_11_0_arm64.whl.metadata (5.5 kB)
Collecting cycler>=0.10 (from matplotlib->imexam)
  Using cached cycler-0.12.1-py3-none-any.whl.metadata (3.8 kB)
Collecting fonttools>=4.22.0 (from matplotlib->imexam)
  Downloading fonttools-4.60.1-cp311-cp311-macosx_10_9_universal2.whl.metadata (112 kB)
Collecting kiwisolver>=1.3.1 (from matplotlib->imexam)
  Downloading kiwisolver-1.4.9-cp311-cp311-macosx_11_0_arm64.whl.metadata (6.3 kB)
Collecting pillow>=8 (from matplotlib->imexam)
  Downloading pillow-12.0.0-cp311-cp311-macosx_11_0_arm64.whl.metadata (8.8 kB)
Collecting pyparsing>=3 (from matplotlib->imexam)
  Using cached pyparsing-3.2.5-py3-none-any.whl.metadata (5.0 kB)
Collecting python-dateutil>=2.7 (from matplotlib->imexam)
  Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting six>=1.5 (from python-dateutil>=2.7->matplotlib->imexam)
  Using cached six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
Downloading astropy-7.1.1-cp311-cp311-macosx_11_0_arm64.whl (6.3 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.3/6.3 MB 5.0 MB/s  0:00:01
Using cached astropy_iers_data-0.2025.10.27.0.39.10-py3-none-any.whl (2.0 MB)
Downloading numpy-2.3.4-cp311-cp311-macosx_14_0_arm64.whl (5.4 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 12.7 MB/s  0:00:00
Using cached packaging-25.0-py3-none-any.whl (66 kB)
Using cached pyerfa-2.0.1.5-cp39-abi3-macosx_11_0_arm64.whl (329 kB)
Downloading pyyaml-6.0.3-cp311-cp311-macosx_11_0_arm64.whl (175 kB)
Downloading scipy-1.16.3-cp311-cp311-macosx_14_0_arm64.whl (20.9 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 20.9/20.9 MB 11.5 MB/s  0:00:01
Downloading matplotlib-3.10.7-cp311-cp311-macosx_11_0_arm64.whl (8.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.1/8.1 MB 12.5 MB/s  0:00:00
Downloading contourpy-1.3.3-cp311-cp311-macosx_11_0_arm64.whl (270 kB)
Using cached cycler-0.12.1-py3-none-any.whl (8.3 kB)
Downloading fonttools-4.60.1-cp311-cp311-macosx_10_9_universal2.whl (2.8 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 12.4 MB/s  0:00:00
Downloading kiwisolver-1.4.9-cp311-cp311-macosx_11_0_arm64.whl (65 kB)
Downloading pillow-12.0.0-cp311-cp311-macosx_11_0_arm64.whl (4.7 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.7/4.7 MB 12.3 MB/s  0:00:00
Using cached pyparsing-3.2.5-py3-none-any.whl (113 kB)
Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Using cached six-1.17.0-py2.py3-none-any.whl (11 kB)
Building wheels for collected packages: imexam
  DEPRECATION: Building 'imexam' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'imexam'. Discussion can be found at https://github.com/pypa/pip/issues/6334
  Building wheel for imexam (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [112 lines of output]
      /private/var/folders/qj/kp1rmfq540x4d1lz8st1t4m40000gn/T/pip-install-zvfm8qki/imexam_bda7456e24fe4d6e8fff39dd4471d94b/setup.py:11: SetuptoolsDeprecationWarning: The test command is disabled and references to it are deprecated.
      !!
      
              ********************************************************************************
              Please remove any references to `setuptools.command.test` in all supported versions of the affected package.
      
              This deprecation is overdue, please update your project and remove deprecated
              calls to avoid build errors in the future.
              ********************************************************************************
      
      !!
        from setuptools.command.test import test as TestCommand
      Sphinx is not installed, can't build documents!!
      
      Cython not found
      /opt/anaconda3/envs/imexam3/lib/python3.11/site-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead.
      !!
      
              ********************************************************************************
              Usage of dash-separated 'description-file' will not be supported in future
              versions. Please use the underscore name 'description_file' instead.
      
              By 2026-Mar-03, you need to update your project and remove deprecated calls
              or your builds will no longer be supported.
      
              See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
              ********************************************************************************
      
      !!
        opt = self._enforce_underscore(opt, section)
      /opt/anaconda3/envs/imexam3/lib/python3.11/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!
      
              ********************************************************************************
              Please consider removing the following classifiers in favor of a SPDX license expression:
      
              License :: OSI Approved :: BSD License
      
              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************
      
      !!
        self._finalize_license_expression()
      /opt/anaconda3/envs/imexam3/lib/python3.11/site-packages/setuptools/__init__.py:92: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
      !!
      
              ********************************************************************************
              Requirements should be satisfied by a PEP 517 installer.
              If you are using pip, you can try `pip install --use-pep517`.
      
              This deprecation is overdue, please update your project and remove deprecated
              calls to avoid build errors in the future.
              ********************************************************************************
      
      !!
        dist.fetch_build_eggs(dist.setup_requires)
      /opt/anaconda3/envs/imexam3/lib/python3.11/site-packages/setuptools/dist.py:804: DistDeprecationWarning: use_2to3 is ignored.
        ep.load()(self, ep.name, value)
      /opt/anaconda3/envs/imexam3/lib/python3.11/site-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead.
      !!
      
              ********************************************************************************
              Usage of dash-separated 'description-file' will not be supported in future
              versions. Please use the underscore name 'description_file' instead.
              (Affected: imexam).
      
              By 2026-Mar-03, you need to update your project and remove deprecated calls
              or your builds will no longer be supported.
      
              See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
              ********************************************************************************
      
      !!
        opt = self._enforce_underscore(opt, section)
      running bdist_wheel
      running build
      running build_py
      creating build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/xpa_wrap.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/ds9_viewer.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/connect.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/util.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/_astropy_init.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/math_helper.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/ginga_viewer.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/imexam_defpars.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/__init__.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      copying imexam/imexamine.py -> build/lib.macosx-11.0-arm64-cpython-311/imexam
      running build_ext
      building 'imexam.imexamxpa' extension
      creating build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa
      creating build/temp.macosx-11.0-arm64-cpython-311/wrappers
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/acl.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/acl.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/client.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/client.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/clipboard.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/clipboard.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/command.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/command.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/find.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/find.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/port.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/port.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/remote.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/remote.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/tcp.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/tcp.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/timedconn.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/timedconn.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/word.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/word.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/xalloc.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/xalloc.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/xlaunch.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/xlaunch.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/xpa.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/xpa.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c ./cextern/xpa/xpaio.c -o build/temp.macosx-11.0-arm64-cpython-311/cextern/xpa/xpaio.o
      clang -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -fPIC -O2 -isystem /opt/anaconda3/envs/imexam3/include -arch arm64 -DHAVE_CONFIG_H=1 -I./cextern/xpa/ -I/opt/anaconda3/envs/imexam3/include/python3.11 -c wrappers/xpa.c -o build/temp.macosx-11.0-arm64-cpython-311/wrappers/xpa.o
      wrappers/xpa.c:236:12: fatal error: 'longintrepr.h' file not found
        236 |   #include "longintrepr.h"
            |            ^~~~~~~~~~~~~~~
      1 error generated.
      error: command '/usr/bin/clang' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for imexam
  Running setup.py clean for imexam
Failed to build imexam
error: failed-wheel-build-for-install

× Failed to build installable wheels for some pyproject.toml based projects
╰─> imexam

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions