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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions