leng-yue / py-scrcpy-client

An easy to use python scrcpy client
https://leng-yue.github.io/py-scrcpy-client/
MIT License
308 stars 76 forks source link

pip install error #69

Open FRzhuizhu opened 3 months ago

FRzhuizhu commented 3 months ago

pip install scrcpy-client[ui]
OUTPUT: Collecting scrcpy-client[ui] Using cached scrcpy_client-0.4.1-py3-none-any.whl.metadata (2.8 kB) Collecting PySide6<7.0.0,>=6.3.0 (from scrcpy-client[ui]) Using cached PySide6-6.7.2-cp39-abi3-win_amd64.whl.metadata (5.5 kB) Collecting adbutils<0.15.0,>=0.14.1 (from scrcpy-client[ui]) Using cached adbutils-0.14.1-py3-none-win_amd64.whl.metadata (918 bytes) Collecting av<10.0.0,>=9.2.0 (from scrcpy-client[ui]) Using cached av-9.2.0.tar.gz (2.4 MB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [74 lines of output] Compiling av\buffer.pyx because it changed. [1/1] Cythonizing av\buffer.pyx Compiling av\bytesource.pyx because it changed. [1/1] Cythonizing av\bytesource.pyx Compiling av\descriptor.pyx because it changed. [1/1] Cythonizing av\descriptor.pyx Compiling av\dictionary.pyx because it changed. [1/1] Cythonizing av\dictionary.pyx Compiling av\enum.pyx because it changed. [1/1] Cythonizing av\enum.pyx Compiling av\error.pyx because it changed. [1/1] Cythonizing av\error.pyx Compiling av\format.pyx because it changed. [1/1] Cythonizing av\format.pyx Compiling av\frame.pyx because it changed. [1/1] Cythonizing av\frame.pyx performance hint: av\logging.pyx:232:5: Exception check on 'log_callback' will always require the GIL to be acquired. Possible solutions:

  1. Declare 'log_callback' as 'noexcept' if you control the definition and you're s ure you don't want the function to raise exceptions.
  2. Use an 'int' return type on 'log_callback' to allow an error code to be returne d.

    Error compiling Cython file:

    ... cdef const char log_context_name(void ptr) nogil: cdef log_context obj = <log_context>ptr return obj.name

    cdef lib.AVClass log_class log_class.item_name = log_context_name ^

    av\logging.pyx:216:22: Cannot assign type 'const char (void ) except? NULL nogil' to 'const char ()(void *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to the type of 'log_context_name'.

    Error compiling Cython file:

    ...

    Start the magic!

    We allow the user to fully disable the logging system as it will not play

    nicely with subinterpreters due to FFmpeg-created threads.

    if os.environ.get('PYAV_LOGGING') != 'off': lib.av_log_set_callback(log_callback) ^

    av\logging.pyx:351:28: Cannot assign type 'void (void , int, const char , va_list) e xcept nogil' to 'av_log_callback' (alias of 'void ()(void , int, const char , va_list) noexcept nogil'). Exception values are incompatible. Suggest adding 'noexcept' to the type o f 'log_callback'. Compiling av\logging.pyx because it changed. [1/1] Cythonizing av\logging.pyx Traceback (most recent call last): File "D:\miniconda3\envs\autopy\Lib\site-packages\pip_vendor\pyproject_hooks_in_pr ocess_in_process.py", line 353, in main() File "D:\miniconda3\envs\autopy\Lib\site-packages\pip_vendor\pyproject_hooks_in_pr ocess_in_process.py", line 335, in main json_out['return_val'] = hook(*hook_input['kwargs']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\miniconda3\envs\autopy\Lib\site-packages\pip_vendor\pyproject_hooks_in_pr ocess_in_process.py", line 118, in get_requires_for_build_wheel return hook(config_settings) ^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\setuptools\build_meta.py", line 327, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=[]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\setuptools\build_meta.py", line 297, in _get_build_requires self.run_setup() File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\setuptools\build_meta.py", line 497, in run_setup super().run_setup(setup_script=setup_script) File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\setuptools\build_meta.py", line 313, in run_setup exec(code, locals()) File "", line 157, in File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\Cython\Build\Dependencies.py", line 1154, in cythonize cythonize_one(args) File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-bb0z4wdz\overlay\Lib\s ite-packages\Cython\Build\Dependencies.py", line 1321, in cythonize_one raise CompileError(None, pyx_file) Cython.Compiler.Errors.CompileError: av\logging.pyx [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
    error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

FRzhuizhu commented 3 months ago

On a Windows 10 system, I resolved the issue by downgrading the Python version from 3.12 to 3.9.

uwuv3 commented 1 month ago

download as zip, extract, cut scrcpy (or scrcpy_ui) to python project

aentwist commented 1 month ago

Duplicate of https://github.com/leng-yue/py-scrcpy-client/issues/59