Skip to content

Facing error with pip install on Python 3.13 #1

@orestiskapar

Description

@orestiskapar

Hello there,

I'm following the instructions in https://github.com/signaloid/Signaloid-C0-microSD-Demo-Calculator for running the Python-based host application and faced an issue with the command

pip install git+https://github.com/signaloid/signaloid-python

when the environment is based on a Python 3.13 interpreter.

I managed to get things to work using Python 3.12 but I thought it would be useful to document this error here. I created virtual environment with VSCode in both cases.

Version

Package signaloid version: 1.2.0 (from repository toml)
Current git hash: bd1bf27

Full log

Below is the full log with my home path redacted. A lot of the error log prints seem to have to do with NumPy.

(.venv) ➜  Signaloid-C0-microSD-Demo-Calculator git:(main) 
➜> python --version                                             
Python 3.13.2
(.venv) ➜  Signaloid-C0-microSD-Demo-Calculator git:(main) 
➜> pip install git+https://github.com/signaloid/signaloid-python
Collecting git+https://github.com/signaloid/signaloid-python
  Cloning https://github.com/signaloid/signaloid-python to /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-req-build-5jhuriz3
  Running command git clone --filter=blob:none --quiet https://github.com/signaloid/signaloid-python /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-req-build-5jhuriz3
  Resolved https://github.com/signaloid/signaloid-python to commit bd1bf276fa7b70ed5d23ad05462efadcd1a879ac
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting matplotlib<4.0.0,>=3.8.3 (from signaloid==1.2.0)
  Using cached matplotlib-3.10.0-cp313-cp313-macosx_11_0_arm64.whl.metadata (11 kB)
Collecting numpy<2.0.0,>=1.26.4 (from signaloid==1.2.0)
  Using cached numpy-1.26.4.tar.gz (15.8 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [295 lines of output]
      + <HOME-PATH>/Signaloid-C0-microSD-Demo-Calculator/.venv/bin/python /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/vendored-meson/meson/meson.py setup /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497 /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/.mesonpy-x7y30rrz -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --native-file=/private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/.mesonpy-x7y30rrz/meson-python-native-file.ini
      The Meson build system
      Version: 1.2.99
      Source dir: /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497
      Build dir: /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/.mesonpy-x7y30rrz
      Build type: native build
      Project name: NumPy
      Project version: 1.26.4
      C compiler for the host machine: cc (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
      C linker for the host machine: cc ld64 1115.7.3
      C++ compiler for the host machine: c++ (clang 16.0.0 "Apple clang version 16.0.0 (clang-1600.0.26.6)")
      C++ linker for the host machine: c++ ld64 1115.7.3
      Cython compiler for the host machine: cython (cython 3.0.12)
      Host machine cpu family: aarch64
      Host machine cpu: aarch64
      Program python found: YES (<HOME-PATH>/Signaloid-C0-microSD-Demo-Calculator/.venv/bin/python)
      Found pkg-config: /opt/homebrew/bin/pkg-config (2.3.0)
      Run-time dependency python found: YES 3.13
      Has header "Python.h" with dependency python-3.13: YES
      Compiler for C supports arguments -fno-strict-aliasing: YES
      Compiler for C supports arguments -ftrapping-math: YES
      Compiler for C supports link arguments -Wl,-ld_classic: YES
      Message: During parsing cpu-dispatch: The following CPU features were ignored due to platform incompatibility or lack of support:
      "XOP FMA4"
      Test features "NEON NEON_FP16 NEON_VFPV4 ASIMD" : Supported
      Test features "ASIMDHP" : Supported
      Test features "ASIMDFHM" : Supported
      Configuring npy_cpu_dispatch_config.h using configuration
      Message:
      CPU Optimization Options
        baseline:
          Requested : min
          Enabled   : NEON NEON_FP16 NEON_VFPV4 ASIMD
        dispatch:
          Requested : max -xop -fma4
          Enabled   : ASIMDHP ASIMDFHM
      
      Library m found: YES
      Run-time dependency scipy-openblas found: NO (tried pkgconfig)
      Run-time dependency mkl found: NO (tried pkgconfig and system)
      Run-time dependency mkl found: NO (tried pkgconfig and system)
      Run-time dependency accelerate found: YES
      ../numpy/meson.build:124: WARNING: Project targets '>=1.2.99' but uses feature introduced in '1.3.0': dep 'accelerate' custom lookup.
      Message: BLAS symbol suffix: $NEWLAPACK
      Program _build_utils/process_src_template.py found: YES (<HOME-PATH>/Signaloid-C0-microSD-Demo-Calculator/.venv/bin/python /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/numpy/_build_utils/process_src_template.py)
      Program _build_utils/tempita.py found: YES (<HOME-PATH>/Signaloid-C0-microSD-Demo-Calculator/.venv/bin/python /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/numpy/_build_utils/tempita.py)
      Configuring __config__.py using configuration
      Checking for size of "short" : 2
      Checking for size of "int" : 4
      Checking for size of "long" : 8
      Checking for size of "long long" : 8
      Checking for size of "float" : 4
      Checking for size of "double" : 8
      Checking for size of "long double" : 8
      Checking for size of "off_t" : 8
      Checking for size of "Py_intptr_t" with dependency python-3.13: 8
      Checking for size of "PY_LONG_LONG" with dependency python-3.13: 8
      Has header "complex.h" : YES
      Checking for type "complex float" : YES
      Checking for size of "struct {float __x; float __y;}" : 8
      Checking for type "complex double" : YES
      Checking for size of "struct {double __x; double __y;}" : 16
      Checking for type "complex long double" : YES
      Checking for size of "struct {long double __x; long double __y;}" : 16
      Checking for function "sin" with dependency -lm: YES
      Checking for function "cos" with dependency -lm: YES
      Checking for function "tan" with dependency -lm: YES
      Checking for function "sinh" with dependency -lm: YES
      Checking for function "cosh" with dependency -lm: YES
      Checking for function "tanh" with dependency -lm: YES
      Checking for function "fabs" with dependency -lm: YES
      Checking for function "floor" with dependency -lm: YES
      Checking for function "ceil" with dependency -lm: YES
      Checking for function "sqrt" with dependency -lm: YES
      Checking for function "log10" with dependency -lm: YES
      Checking for function "log" with dependency -lm: YES
      Checking for function "exp" with dependency -lm: YES
      Checking for function "asin" with dependency -lm: YES
      Checking for function "acos" with dependency -lm: YES
      Checking for function "atan" with dependency -lm: YES
      Checking for function "fmod" with dependency -lm: YES
      Checking for function "modf" with dependency -lm: YES
      Checking for function "frexp" with dependency -lm: YES
      Checking for function "ldexp" with dependency -lm: YES
      Checking for function "expm1" with dependency -lm: YES
      Checking for function "log1p" with dependency -lm: YES
      Checking for function "acosh" with dependency -lm: YES
      Checking for function "asinh" with dependency -lm: YES
      Checking for function "atanh" with dependency -lm: YES
      Checking for function "rint" with dependency -lm: YES
      Checking for function "trunc" with dependency -lm: YES
      Checking for function "exp2" with dependency -lm: YES
      Checking for function "copysign" with dependency -lm: YES
      Checking for function "nextafter" with dependency -lm: YES
      Checking for function "cbrt" with dependency -lm: YES
      Checking for function "log2" with dependency -lm: YES
      Checking for function "pow" with dependency -lm: YES
      Checking for function "hypot" with dependency -lm: YES
      Checking for function "atan2" with dependency -lm: YES
      Checking for function "csin" with dependency -lm: YES
      Checking for function "csinh" with dependency -lm: YES
      Checking for function "ccos" with dependency -lm: YES
      Checking for function "ccosh" with dependency -lm: YES
      Checking for function "ctan" with dependency -lm: YES
      Checking for function "ctanh" with dependency -lm: YES
      Checking for function "creal" with dependency -lm: YES
      Checking for function "cimag" with dependency -lm: YES
      Checking for function "conj" with dependency -lm: YES
      Checking for function "strtoll" : YES
      Checking for function "strtoull" : YES
      Checking for function "cabs" with dependency -lm: YES
      Checking for function "cabsf" with dependency -lm: YES
      Checking for function "cabsl" with dependency -lm: YES
      Checking for function "cacos" with dependency -lm: YES
      Checking for function "cacosf" with dependency -lm: YES
      Checking for function "cacosl" with dependency -lm: YES
      Checking for function "cacosh" with dependency -lm: YES
      Checking for function "cacoshf" with dependency -lm: YES
      Checking for function "cacoshl" with dependency -lm: YES
      Checking for function "carg" with dependency -lm: YES
      Checking for function "cargf" with dependency -lm: YES
      Checking for function "cargl" with dependency -lm: YES
      Checking for function "casin" with dependency -lm: YES
      Checking for function "casinf" with dependency -lm: YES
      Checking for function "casinl" with dependency -lm: YES
      Checking for function "casinh" with dependency -lm: YES
      Checking for function "casinhf" with dependency -lm: YES
      Checking for function "casinhl" with dependency -lm: YES
      Checking for function "catan" with dependency -lm: YES
      Checking for function "catanf" with dependency -lm: YES
      Checking for function "catanl" with dependency -lm: YES
      Checking for function "catanh" with dependency -lm: YES
      Checking for function "catanhf" with dependency -lm: YES
      Checking for function "catanhl" with dependency -lm: YES
      Checking for function "cexp" with dependency -lm: YES
      Checking for function "cexpf" with dependency -lm: YES
      Checking for function "cexpl" with dependency -lm: YES
      Checking for function "clog" with dependency -lm: YES
      Checking for function "clogf" with dependency -lm: YES
      Checking for function "clogl" with dependency -lm: YES
      Checking for function "cpow" with dependency -lm: YES
      Checking for function "cpowf" with dependency -lm: YES
      Checking for function "cpowl" with dependency -lm: YES
      Checking for function "csqrt" with dependency -lm: YES
      Checking for function "csqrtf" with dependency -lm: YES
      Checking for function "csqrtl" with dependency -lm: YES
      Checking for function "csin" with dependency -lm: YES (cached)
      Checking for function "csinf" with dependency -lm: YES
      Checking for function "csinl" with dependency -lm: YES
      Checking for function "csinh" with dependency -lm: YES (cached)
      Checking for function "csinhf" with dependency -lm: YES
      Checking for function "csinhl" with dependency -lm: YES
      Checking for function "ccos" with dependency -lm: YES (cached)
      Checking for function "ccosf" with dependency -lm: YES
      Checking for function "ccosl" with dependency -lm: YES
      Checking for function "ccosh" with dependency -lm: YES (cached)
      Checking for function "ccoshf" with dependency -lm: YES
      Checking for function "ccoshl" with dependency -lm: YES
      Checking for function "ctan" with dependency -lm: YES (cached)
      Checking for function "ctanf" with dependency -lm: YES
      Checking for function "ctanl" with dependency -lm: YES
      Checking for function "ctanh" with dependency -lm: YES (cached)
      Checking for function "ctanhf" with dependency -lm: YES
      Checking for function "ctanhl" with dependency -lm: YES
      Checking for function "isfinite" with dependency -lm: YES
      Header "Python.h" has symbol "isfinite" with dependency python-3.13: YES
      Checking for function "isinf" with dependency -lm: YES
      Header "Python.h" has symbol "isinf" with dependency python-3.13: YES
      Checking for function "isnan" with dependency -lm: YES
      Header "Python.h" has symbol "isnan" with dependency python-3.13: YES
      Checking for function "signbit" with dependency -lm: YES
      Header "Python.h" has symbol "signbit" with dependency python-3.13: YES
      Checking for function "fallocate" : NO
      Header "Python.h" has symbol "HAVE_FTELLO" with dependency python-3.13: YES
      Header "Python.h" has symbol "HAVE_FSEEKO" with dependency python-3.13: YES
      Checking for function "backtrace" : YES
      Checking for function "madvise" : YES
      Has header "features.h" : NO
      Has header "xlocale.h" : YES
      Has header "dlfcn.h" : YES
      Has header "execinfo.h" : YES
      Has header "libunwind.h" : YES
      Has header "sys/mman.h" : YES
      Checking for function "strtold_l" : YES
      Compiler for C supports arguments -O3: YES
      Has header "endian.h" : NO
      Has header "sys/endian.h" : NO
      Header "inttypes.h" has symbol "PRIdPTR" : YES
      Compiler for C supports function attribute visibility:hidden: YES
      Configuring config.h using configuration
      Configuring _numpyconfig.h using configuration
      Configuring npymath.ini using configuration
      Configuring mlib.ini using configuration
      Generating multi-targets for "_umath_tests.dispatch.h"
        Enabled targets: ASIMDHP, baseline
      Generating multi-targets for "argfunc.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "simd_qsort.dispatch.h"
        Enabled targets:
      Generating multi-targets for "simd_qsort_16bit.dispatch.h"
        Enabled targets:
      Generating multi-targets for "loops_arithm_fp.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_arithmetic.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_comparison.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_exponent_log.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_hyperbolic.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_logical.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_minmax.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_modulo.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_trigonometric.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_umath_fp.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_unary.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_unary_fp.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_unary_fp_le.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_unary_complex.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "loops_autovec.dispatch.h"
        Enabled targets: baseline
      Generating multi-targets for "_simd.dispatch.h"
        Enabled targets: baseline
      Build targets in project: 60
      WARNING: Project specifies a minimum meson_version '>=1.2.99' but uses features which were added in newer versions:
       * 1.3.0: {'dep 'accelerate' custom lookup'}
      
      NumPy 1.26.4
      
        User defined options
          Native files: /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/.mesonpy-x7y30rrz/meson-python-native-file.ini
          buildtype   : release
          b_ndebug    : if-release
          b_vscrt     : md
      
      Found ninja-1.11.1.git.kitware.jobserver-1 at /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-build-env-fwq9vq6p/normal/bin/ninja
      + /private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-build-env-fwq9vq6p/normal/bin/ninja
      [1/299] Generating 'numpy/core/libnpymath.a.p/npy_math_complex.c'
      [2/299] Generating 'numpy/core/_multiarray_tests.cpython-313-darwin.so.p/_multiarray_tests.c'
      [3/299] Generating numpy/core/npy_math_internal.h with a custom command
      [4/299] Generating numpy/core/_umath_doc_generated with a custom command
      [5/299] Generating 'numpy/core/libnpymath.a.p/ieee754.c'
      [6/299] Generating numpy/__init__.cython-30.pxd with a custom command
      [7/299] Generating numpy/core/__umath_generated with a custom command
      [8/299] Generating numpy/__init__.py with a custom command
      [9/299] Generating numpy/__init__.pxd with a custom command
      [10/299] Generating 'numpy/core/_umath_tests.cpython-313-darwin.so.p/_umath_tests.c'
      [11/299] Generating 'numpy/core/_multiarray_tests.cpython-313-darwin.so.p/templ_common.h'
      [12/299] Generating 'numpy/core/libargfunc.dispatch.h_baseline.a.p/arraytypes.h'
      [13/299] Generating 'numpy/core/libargfunc.dispatch.h_baseline.a.p/npy_sort.h'
      [14/299] Generating 'numpy/core/libargfunc.dispatch.h_baseline.a.p/argfunc.dispatch.c'
      [15/299] Generating numpy/core/__ufunc_api with a custom command
      [16/299] Generating 'numpy/core/libloops_arithm_fp.dispatch.h_baseline.a.p/loops.h'
      [17/299] Generating 'numpy/core/libloops_arithm_fp.dispatch.h_baseline.a.p/loops_utils.h'
      [18/299] Generating 'numpy/core/libloops_arithm_fp.dispatch.h_baseline.a.p/loops_arithm_fp.dispatch.c'
      [19/299] Generating 'numpy/core/libloops_arithmetic.dispatch.h_baseline.a.p/loops_arithmetic.dispatch.c'
      [20/299] Generating 'numpy/core/libloops_arithmetic.dispatch.h_baseline.a.p/loops.h'
      [21/299] Generating 'numpy/core/libloops_arithmetic.dispatch.h_baseline.a.p/loops_utils.h'
      [22/299] Generating 'numpy/core/libloops_comparison.dispatch.h_baseline.a.p/loops.h'
      [23/299] Generating 'numpy/core/libloops_comparison.dispatch.h_baseline.a.p/loops_utils.h'
      [24/299] Generating 'numpy/core/libloops_comparison.dispatch.h_baseline.a.p/loops_comparison.dispatch.c'
      [25/299] Generating 'numpy/core/libloops_exponent_log.dispatch.h_baseline.a.p/loops_utils.h'
      [26/299] Generating 'numpy/core/libloops_exponent_log.dispatch.h_baseline.a.p/loops.h'
      [27/299] Compiling C object numpy/core/libnpymath.a.p/meson-generated_ieee754.c.o
      [28/299] Generating 'numpy/core/libloops_exponent_log.dispatch.h_baseline.a.p/loops_exponent_log.dispatch.c'
      [29/299] Compiling C object numpy/core/libnpymath.a.p/meson-generated_npy_math_complex.c.o
      [30/299] Compiling C++ object numpy/core/libnpymath.a.p/src_npymath_halffloat.cpp.o
      FAILED: numpy/core/libnpymath.a.p/src_npymath_halffloat.cpp.o
      c++ -Inumpy/core/libnpymath.a.p -Inumpy/core -I../numpy/core -Inumpy/core/include -I../numpy/core/include -I../numpy/core/src/npymath -I../numpy/core/src/common -I/opt/homebrew/opt/python@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13 -I/private/var/folders/dt/qqcw9v4n62z9p6x9v3x7vnw00000gn/T/pip-install-12wx3n75/numpy_722daa64579644a29712e44affe1c497/.mesonpy-x7y30rrz/meson_cpu -fcolor-diagnostics -DNDEBUG -Wall -Winvalid-pch -std=c++17 -O3 -ftrapping-math -DNPY_HAVE_CLANG_FPSTRICT -DNPY_HAVE_NEON_VFPV4 -DNPY_HAVE_NEON_FP16 -DNPY_HAVE_NEON -DNPY_HAVE_ASIMD -MD -MQ numpy/core/libnpymath.a.p/src_npymath_halffloat.cpp.o -MF numpy/core/libnpymath.a.p/src_npymath_halffloat.cpp.o.d -o numpy/core/libnpymath.a.p/src_npymath_halffloat.cpp.o -c ../numpy/core/src/npymath/halffloat.cpp
      In file included from ../numpy/core/src/npymath/halffloat.cpp:12:
      In file included from ../numpy/core/src/common/common.hpp:8:
      ../numpy/core/src/common/utils.hpp:10:10: fatal error: 'type_traits' file not found
         10 | #include <type_traits>
            |          ^~~~~~~~~~~~~
      1 error generated.
      [31/299] Generating numpy/core/__multiarray_api with a custom command
      [32/299] Generating 'numpy/core/libloops_hyperbolic.dispatch.h_baseline.a.p/loops.h'
      [33/299] Compiling C object numpy/core/libnpymath.a.p/src_npymath_npy_math.c.o
      [34/299] Generating 'numpy/core/libloops_hyperbolic.dispatch.h_baseline.a.p/loops_hyperbolic.dispatch.c'
      [35/299] Generating 'numpy/core/libloops_hyperbolic.dispatch.h_baseline.a.p/loops_utils.h'
      [36/299] Generating 'numpy/core/libloops_logical.dispatch.h_baseline.a.p/loops_utils.h'
      [37/299] Generating 'numpy/core/libloops_logical.dispatch.h_baseline.a.p/loops_logical.dispatch.c'
      [38/299] Generating 'numpy/core/libloops_logical.dispatch.h_baseline.a.p/loops.h'
      [39/299] Generating 'numpy/core/libloops_minmax.dispatch.h_baseline.a.p/loops.h'
      ninja: build stopped: subcommand failed.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

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