ggerganov / ggwave

Tiny data-over-sound library
https://youtu.be/Zcgf77T71QM
MIT License
1.9k stars 141 forks source link

ggwave not installing on fedora linux with `pip install ggwave' #109

Open FailurePoint opened 5 months ago

FailurePoint commented 5 months ago

So I keep getting this error when trying to install ggwave with `pip install ggwave' on my Fedora Linux machine but running the same command on Linux Mint on my brothers laptop installs fine... I really need this module to work for me since it seems to be one of a kind in the python world roigh now and I do not have the technical skill to write my own right now...

❯ pip install ggwave
Collecting ggwave
  Downloading ggwave-0.4.2.tar.gz (76 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 76.9/76.9 kB 560.2 kB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: ggwave
  Building wheel for ggwave (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for ggwave (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [464 lines of output]
      running bdist_wheel
      running build
      running build_ext
      building 'ggwave' extension
      creating build
      creating build/temp.linux-x86_64-cpython-312
      creating build/temp.linux-x86_64-cpython-312/ggwave
      creating build/temp.linux-x86_64-cpython-312/ggwave/src
      gcc -fno-strict-overflow -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -fexceptions -fcf-protection -fexceptions -fcf-protection -fexceptions -fcf-protection -fPIC -Iggwave/include -Iggwave/include/ggwave -I/home/ace/Documents/ggwave/include -I/usr/include/python3.12 -c ggwave.bycython.cpp -o build/temp.linux-x86_64-cpython-312/ggwave.bycython.o -O3 -std=c++11
      ggwave.bycython.cpp: In function ‘PyObject* __pyx_pf_6ggwave_2init(PyObject*, PyObject*)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1607:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1607 |     __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.12/dictobject.h:90,
                       from /usr/include/python3.12/Python.h:61,
                       from ggwave.bycython.cpp:6:
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1607:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1607 |     __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1607:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1607 |     __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 15, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘PyObject* __pyx_pf_6ggwave_6encode(PyObject*, PyObject*, PyObject*, PyObject*, PyObject*)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1948:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1948 |     __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_init); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1948:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1948 |     __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_init); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1948:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1948 |     __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_init); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1950:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1950 |     __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1950:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1950 |     __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:1950:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       1950 |     __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_getDefaultParameters); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 34, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:2071:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       2071 |     __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_free); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:2071:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       2071 |     __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_free); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1034:43: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1034 |     (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
            |                                           ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:2071:5: note: in expansion of macro ‘__Pyx_GetModuleGlobalName’
       2071 |     __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_free); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error)
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘uint64_t __Pyx_get_tp_dict_version(PyObject*)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4697:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4697 |     return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
            |                           ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4697:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4697 |     return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
            |                           ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4697:27: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4697 |     return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
            |                           ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘uint64_t __Pyx_get_object_dict_version(PyObject*)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4709:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4709 |     return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
            |                                    ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4709:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4709 |     return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
            |                                    ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:4709:36: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4709 |     return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
            |                                    ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘int __Pyx_object_dict_version_matches(PyObject*, uint64_t, uint64_t)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:890:43: note: in definition of macro ‘unlikely’
        890 |   #define unlikely(x) __builtin_expect(!!(x), 0)
            |                                           ^
      ggwave.bycython.cpp:4713:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4713 |     if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
            |                                                        ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:890:43: note: in definition of macro ‘unlikely’
        890 |   #define unlikely(x) __builtin_expect(!!(x), 0)
            |                                           ^
      ggwave.bycython.cpp:4713:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4713 |     if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
            |                                                        ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:890:43: note: in definition of macro ‘unlikely’
        890 |   #define unlikely(x) __builtin_expect(!!(x), 0)
            |                                           ^
      ggwave.bycython.cpp:4713:56: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       4713 |     if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
            |                                                        ^~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘PyObject* __Pyx__GetModuleGlobalName(PyObject*, uint64_t*, PyObject**)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1008:21: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1008 |     (version_var) = __PYX_GET_DICT_VERSION(dict);\
            |                     ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:4730:5: note: in expansion of macro ‘__PYX_UPDATE_DICT_CACHE’
       4730 |     __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
            |     ^~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1008:21: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1008 |     (version_var) = __PYX_GET_DICT_VERSION(dict);\
            |                     ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:4730:5: note: in expansion of macro ‘__PYX_UPDATE_DICT_CACHE’
       4730 |     __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
            |     ^~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1008:21: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1008 |     (version_var) = __PYX_GET_DICT_VERSION(dict);\
            |                     ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:4730:5: note: in expansion of macro ‘__PYX_UPDATE_DICT_CACHE’
       4730 |     __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
            |     ^~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘void __Pyx_Raise(PyObject*, PyObject*, PyObject*, PyObject*)’:
      ggwave.bycython.cpp:5375:36: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’
       5375 |         PyObject* tmp_tb = tstate->curexc_traceback;
            |                                    ^~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5378:21: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’
       5378 |             tstate->curexc_traceback = tb;
            |                     ^~~~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘int __Pyx_CLineForTraceback(PyThreadState*, int)’:
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1013:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1013 |     if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
            |                ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1013:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1013 |     if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
            |                ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:889:43: note: in definition of macro ‘likely’
        889 |   #define likely(x)   __builtin_expect(!!(x), 1)
            |                                           ^
      ggwave.bycython.cpp:1013:16: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1013 |     if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
            |                ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1017:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1017 |         __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
            |                              ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1017:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1017 |         __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
            |                              ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1006:65: warning: ‘PyDictObject::ma_version_tag’ is deprecated [-Wdeprecated-declarations]
       1006 | #define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
            |                                                                 ^~~~~~~~~~~~~~
      ggwave.bycython.cpp:1017:30: note: in expansion of macro ‘__PYX_GET_DICT_VERSION’
       1017 |         __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
            |                              ^~~~~~~~~~~~~~~~~~~~~~
      ggwave.bycython.cpp:5531:9: note: in expansion of macro ‘__PYX_PY_DICT_LOOKUP_IF_MODIFIED’
       5531 |         __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/python3.12/cpython/dictobject.h:22:34: note: declared here
         22 |     Py_DEPRECATED(3.12) uint64_t ma_version_tag;
            |                                  ^~~~~~~~~~~~~~
      ggwave.bycython.cpp: In function ‘void __Pyx_AddTraceback(const char*, int, int, const char*)’:
      ggwave.bycython.cpp:452:62: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
        452 |   #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
            |                                                              ^~
      ggwave.bycython.cpp:5722:5: note: in expansion of macro ‘__Pyx_PyFrame_SetLineNumber’
       5722 |     __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
            |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.12/Python.h:42:
      /usr/include/python3.12/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
         22 | typedef struct _frame PyFrameObject;
            |                ^~~~~~
      ggwave.bycython.cpp: In function ‘int __Pyx_PyInt_As_int(PyObject*)’:
      ggwave.bycython.cpp:5891:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       5891 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp:5946:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       5946 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp: In function ‘ggwave_SampleFormat __Pyx_PyInt_As_ggwave_SampleFormat(PyObject*)’:
      ggwave.bycython.cpp:6087:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6087 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp:6142:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6142 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp: In function ‘ggwave_Instance __Pyx_PyInt_As_ggwave_Instance(PyObject*)’:
      ggwave.bycython.cpp:6321:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6321 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp:6376:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6376 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp: In function ‘ggwave_ProtocolId __Pyx_PyInt_As_ggwave_ProtocolId(PyObject*)’:
      ggwave.bycython.cpp:6517:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6517 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp:6572:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6572 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp: In function ‘long int __Pyx_PyInt_As_long(PyObject*)’:
      ggwave.bycython.cpp:6751:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6751 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp:6806:55: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       6806 |             const digit* digits = ((PyLongObject*)x)->ob_digit;
            |                                                       ^~~~~~~~
      ggwave.bycython.cpp: In function ‘Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*)’:
      ggwave.bycython.cpp:7235:47: error: ‘PyLongObject’ {aka ‘struct _longobject’} has no member named ‘ob_digit’
       7235 |     const digit* digits = ((PyLongObject*)b)->ob_digit;
            |                                               ^~~~~~~~
      error: command '/usr/bin/gcc' 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 ggwave
Failed to build ggwave
ERROR: Could not build wheels for ggwave, which is required to install pyproject.toml-based projects
applemayexist commented 2 months ago

I had the same problem. The newer versions of Python shipped in Fedora seem to be the issue. You can install Python 3.10 (the latest that doesn't break the bindings) with dnf install -y python3.10-devel and then use commands python3.10 and pip3.10 like normal.