Skip to content

Issues installing under Python 3.13... on Rocky Linux #134

Description

@perllaghu

Originally discovered here: rocker-org/binder#59

The library installs on a Linux machine (either OS) - but fails in a Rocker/binder docker image, but only on the Rocky Linux.

The error is:

Building wheels for collected packages: pysimdjson
  Building wheel for pysimdjson (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Building wheel for pysimdjson (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [92 lines of output]
      /tmp/pip-build-env-mx61th62/overlay/lib/python3.13/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!
      
              ********************************************************************************
              Please consider removing the following classifiers in favor of a SPDX license expression:
      
              License :: OSI Approved :: MIT License
      
              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************
      
      !!
        self._finalize_license_expression()
      running bdist_wheel
      running build
      running build_py
      creating build/lib.linux-x86_64-cpython-313/simdjson
      copying simdjson/__init__.py -> build/lib.linux-x86_64-cpython-313/simdjson
      copying simdjson/__init__.pyi -> build/lib.linux-x86_64-cpython-313/simdjson
      copying simdjson/py.typed -> build/lib.linux-x86_64-cpython-313/simdjson
      running build_ext
      building 'csimdjson' extension
      creating build/temp.linux-x86_64-cpython-313/simdjson
      g++ -pthread -B /opt/conda/share/python_compiler_compat -fno-strict-overflow -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/include -fPIC -O2 -isystem /opt/conda/include -fPIC -DSIMDJSON_IMPLEMENTATION_FALLBACK=1 -I/opt/conda/include/python3.13 -c simdjson/csimdjson.cpp -o build/temp.linux-x86_64-cpython-313/simdjson/csimdjson.o
      simdjson/csimdjson.cpp:1288:72: warning: ‘Py_UNICODE’ is deprecated [-Wdeprecated-declarations]
       1288 | static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
            |                                                                        ^
      In file included from /opt/conda/include/python3.13/unicodeobject.h:1014,
                       from /opt/conda/include/python3.13/Python.h:80,
                       from simdjson/csimdjson.cpp:44:
      /opt/conda/include/python3.13/cpython/unicodeobject.h:10:37: note: declared here
         10 | Py_DEPRECATED(3.13) typedef wchar_t Py_UNICODE;
            |                                     ^~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE*)’:
      simdjson/csimdjson.cpp:1290:23: warning: ‘Py_UNICODE’ is deprecated [-Wdeprecated-declarations]
       1290 |     const Py_UNICODE *u_end = u;
            |                       ^~~~~
      /opt/conda/include/python3.13/cpython/unicodeobject.h:10:37: note: declared here
         10 | Py_DEPRECATED(3.13) typedef wchar_t Py_UNICODE;
            |                                     ^~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘int __Pyx_PyInt_As_int(PyObject*)’:
      simdjson/csimdjson.cpp:36507:42: error: too few arguments to function ‘int _PyLong_AsByteArray(PyLongObject*, unsigned char*, size_t, int, int, int)’
      36507 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
            |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
      36508 |                                            bytes, sizeof(val),
            |                                            ~~~~~~~~~~~~~~~~~~~
      36509 |                                            is_little, !is_unsigned);
            |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from /opt/conda/include/python3.13/longobject.h:107,
                       from /opt/conda/include/python3.13/Python.h:82:
      /opt/conda/include/python3.13/cpython/longobject.h:111:17: note: declared here
        111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
            |                 ^~~~~~~~~~~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘size_t __Pyx_PyInt_As_size_t(PyObject*)’:
      simdjson/csimdjson.cpp:36780:42: error: too few arguments to function ‘int _PyLong_AsByteArray(PyLongObject*, unsigned char*, size_t, int, int, int)’
      36780 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
            |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
      36781 |                                            bytes, sizeof(val),
            |                                            ~~~~~~~~~~~~~~~~~~~
      36782 |                                            is_little, !is_unsigned);
            |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
      /opt/conda/include/python3.13/cpython/longobject.h:111:17: note: declared here
        111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
            |                 ^~~~~~~~~~~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘long int __Pyx_PyInt_As_long(PyObject*)’:
      simdjson/csimdjson.cpp:37239:42: error: too few arguments to function ‘int _PyLong_AsByteArray(PyLongObject*, unsigned char*, size_t, int, int, int)’
      37239 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
            |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
      37240 |                                            bytes, sizeof(val),
            |                                            ~~~~~~~~~~~~~~~~~~~
      37241 |                                            is_little, !is_unsigned);
            |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
      /opt/conda/include/python3.13/cpython/longobject.h:111:17: note: declared here
        111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
            |                 ^~~~~~~~~~~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘char __Pyx_PyInt_As_char(PyObject*)’:
      simdjson/csimdjson.cpp:37636:42: error: too few arguments to function ‘int _PyLong_AsByteArray(PyLongObject*, unsigned char*, size_t, int, int, int)’
      37636 |                 ret = _PyLong_AsByteArray((PyLongObject *)v,
            |                       ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
      37637 |                                            bytes, sizeof(val),
            |                                            ~~~~~~~~~~~~~~~~~~~
      37638 |                                            is_little, !is_unsigned);
            |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
      /opt/conda/include/python3.13/cpython/longobject.h:111:17: note: declared here
        111 | PyAPI_FUNC(int) _PyLong_AsByteArray(PyLongObject* v,
            |                 ^~~~~~~~~~~~~~~~~~~
      simdjson/csimdjson.cpp: In function ‘PyObject* __Pyx_PyGen_Send(PyGenObject*, PyObject*)’:
      simdjson/csimdjson.cpp:38061:13: error: ‘_PyGen_SetStopIterationValue’ was not declared in this scope; did you mean ‘__Pyx_PyGen__FetchStopIterationValue’?
      38061 |             _PyGen_SetStopIterationValue(result);
            |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
            |             __Pyx_PyGen__FetchStopIterationValue
      error: command '/usr/bin/g++' 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 pysimdjson
Failed to build pysimdjson
error: failed-wheel-build-for-install

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions