jopohl / urh

Universal Radio Hacker: Investigate Wireless Protocols Like A Boss
GNU General Public License v3.0
10.99k stars 874 forks source link

unable to build HEAD or 2.9.5 with limesdr support #1083

Closed ZeroChaos- closed 1 year ago

ZeroChaos- commented 1 year ago

Attempting to build against limesuite 20.10.0 and 23.10.0 both fail on my system with the following output:

git checkout --quiet refs/git-r3/HEAD
GIT update -->
   repository:               https://github.com/jopohl/urh.git
   at the commit:            1593ffa5ffb8e3ad0412ff2b10cb839567018c7a
>>> Source unpacked in /var/tmp/portage/net-wireless/urh-9999/work
>>> Preparing source in /var/tmp/portage/net-wireless/urh-9999/work/urh-9999 ...
 * Build system packages:
 *   dev-python/gpep517            : 15
 *   dev-python/installer          : 0.7.0
 *   dev-python/cython             : 3.0.2-r1
 *   dev-python/setuptools         : 68.2.2
 *   dev-python/setuptools-rust    : 1.7.0
 *   dev-python/setuptools-scm     : 8.0.4
 *   dev-python/wheel              : 0.41.2
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/net-wireless/urh-9999/work/urh-9999 ...
 * Using python3.11 in global scope
 * python3_11: running distutils-r1_run_phase python_configure_all
>>> Source configured.
>>> Compiling source in /var/tmp/portage/net-wireless/urh-9999/work/urh-9999 ...
 * python3_11: running distutils-r1_run_phase distutils-r1_python_compile
 *   Building the wheel for urh-9999 via setuptools.build_meta:__legacy__
gpep517 build-wheel --prefix=/usr --backend setuptools.build_meta:__legacy__ --output-fd 3 --wheel-dir /var/tmp/portage/net-wireless/urh-9999/work/urh-9999-python3_11/wheel --config-json {"--build-option": ["--without-airspy", "--without-bladerf", "--without-hackrf", "--with-limesdr", "--without-plutosdr", "--without-rtlsdr", "--without-sdrplay", "--without-usrp"]}
2023-11-09 19:07:39,073 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__
INFO: Disabling color, you really want to install colorlog.
2023-11-09 19:07:39,102 pythran INFO Disabling color, you really want to install colorlog.
INFO: Pythran support for package 'omp' will be reduced: this module is not available at runtime.
2023-11-09 19:07:39,216 pythran INFO Pythran support for package 'omp' will be reduced: this module is not available at runtime.

Error compiling Cython file:
------------------------------------------------------------
...
ctypedef unsigned int  uint32_t
ctypedef unsigned long long uint64_t

cdef extern from "lime/LimeSuite.h":
    ctypedef double float_type
    const int LMS_SUCCESS = 0
    ^
------------------------------------------------------------

src/urh/dev/native/lib/climesdr.pxd:8:4: Assignment to const 'LMS_SUCCESS'

Error compiling Cython file:
------------------------------------------------------------
...

    int LMS_GetDeviceList(lms_info_str_t *dev_list)
    int LMS_Open(lms_device_t ** device, lms_info_str_t info, void*args)
    int LMS_Close(lms_device_t *device)

    const bool LMS_CH_TX = True
    ^
------------------------------------------------------------

src/urh/dev/native/lib/climesdr.pxd:17:4: Assignment to const 'LMS_CH_TX'

Error compiling Cython file:
------------------------------------------------------------
...
    int LMS_GetDeviceList(lms_info_str_t *dev_list)
    int LMS_Open(lms_device_t ** device, lms_info_str_t info, void*args)
    int LMS_Close(lms_device_t *device)

    const bool LMS_CH_TX = True
    const bool LMS_CH_RX = False
    ^
------------------------------------------------------------

src/urh/dev/native/lib/climesdr.pxd:18:4: Assignment to const 'LMS_CH_RX'
Skipping native airspy support
Skipping native bladerf support
Skipping native hackrf support
Enforcing native limesdr support
Skipping native plutosdr support
Skipping native rtlsdr support
Skipping native usrp support
Skipping native sdrplay support
[1/6] Cythonizing src/urh/cythonext/auto_interpretation.pyx
[2/6] Cythonizing src/urh/cythonext/awre_util.pyx
[3/6] Cythonizing src/urh/cythonext/path_creator.pyx
[4/6] Cythonizing src/urh/cythonext/signal_functions.pyx
[5/6] Cythonizing src/urh/cythonext/util.pyx
[6/6] Cythonizing src/urh/dev/native/lib/limesdr.pyx
Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.11/gpep517", line 4, in <module>
    sys.exit(main())
             ^^^^^^
  File "/usr/lib/python3.11/site-packages/gpep517/__main__.py", line 425, in main
    return func(args)
           ^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/gpep517/__main__.py", line 215, in build_wheel
    print(build_wheel_impl(args, args.wheel_dir), file=out)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/gpep517/__main__.py", line 207, in build_wheel_impl
    wheel_name = backend.build_wheel(str(wheel_dir), args.config_json)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/setuptools/build_meta.py", line 434, in build_wheel
    return self._build_with_temp_dir(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/setuptools/build_meta.py", line 419, in _build_with_temp_dir
    self.run_setup()
  File "/usr/lib/python3.11/site-packages/setuptools/build_meta.py", line 507, in run_setup
    super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
  File "/usr/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
    exec(code, locals())
  File "<string>", line 163, in <module>
  File "<string>", line 118, in get_extensions
  File "/usr/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1139, in cythonize
    cythonize_one(*args)
  File "/usr/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1306, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: src/urh/dev/native/lib/limesdr.pyx