You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.12安装PyQt5-tools遇Preparing metadata错误求解决方案

Python 3.12环境下安装PyQt5-tools的可行方案

问题背景

已通过pip install PyQt5完成PyQt5安装,执行pip install pyqt5-tools时出现如下错误:

Defaulting to user installation because normal site-packages is not writeable
DEPRECATION: Loading egg at c:\program files\python312\lib\site-packages\vboxapi-1.0-py3.12.egg is deprecated. pip 24.3 will enforce this behaviour change. A possible replacement is to use pip for package installation.. Discussion can be found at https://github.com/pypa/pip/issues/12330
Collecting pyqt5-tools
  Using cached pyqt5_tools-5.15.9.3.3-py3-none-any.whl (29 kB)
Collecting click (from pyqt5-tools)
  Using cached click-8.1.7-py3-none-any.whl.metadata (3.0 kB)
Collecting pyqt5==5.15.9 (from pyqt5-tools)
  Using cached PyQt5-5.15.9-cp37-abi3-win_amd64.whl (6.8 MB)
INFO: pip is looking at multiple versions of pyqt5-tools to determine which version is compatible with other requirements. This could take a while.
Collecting pyqt5-tools
  Using cached pyqt5_tools-5.15.4.3.2-py3-none-any.whl (29 kB)
Collecting pyqt5==5.15.4 (from pyqt5-tools)
  Using cached PyQt5-5.15.4.tar.gz (3.3 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      Traceback (most recent call last):
        File "C:\Users\ihabk\AppData\Roaming\Python\Python312\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
          main()
        File "C:\Users\ihabk\AppData\Roaming\Python\Python312\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\ihabk\AppData\Roaming\Python\Python312\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 152, in prepare_metadata_for_build_wheel
          whl_basename = backend.build_wheel(metadata_directory, config_settings)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\sipbuild\api.py", line 46, in build_wheel
          project = AbstractProject.bootstrap('wheel',
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\sipbuild\abstract_project.py", line 87, in bootstrap
          project.setup(pyproject, tool, tool_description)
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\sipbuild\project.py", line 586, in setup
          self.apply_user_defaults(tool)
        File "C:\Users\ihabk\AppData\Local\Temp\pip-install-yi_tz1v2\pyqt5_ed929b1887ec44d3ab4ffb88ed4a6082\project.py", line 63, in apply_user_defaults
          super().apply_user_defaults(tool)
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\pyqtbuild\project.py", line 70, in apply_user_defaults
          super().apply_user_defaults(tool)
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\sipbuild\project.py", line 237, in apply_user_defaults
          self.builder.apply_user_defaults(tool)
        File "C:\Users\ihabk\AppData\Local\Temp\pip-build-env-yl4i5kg6\overlay\Lib\site-packages\pyqtbuild\builder.py", line 69, in apply_user_defaults
          raise PyProjectOptionException('qmake',
      sipbuild.pyproject.PyProjectOptionException
      [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. 

常见方案为降级Python至3.9,以下是Python 3.12环境下的可行解决办法:

  • 替代方案:安装独立的PyQt5-Designer包
    PyQt5-tools核心包含Qt Designer、pyrcc5等工具,可直接安装官方维护的独立包替代:

    pip install pyqt5-designer
    

    安装完成后,直接在命令行执行designer即可启动设计工具,无需依赖pyqt5-tools。

  • 指定兼容版本组合安装
    查找适配Python 3.12的PyQt5与PyQt5-tools版本匹配组合,尝试安装指定版本:

    pip install pyqt5==5.15.10 pyqt5-tools==5.15.10.3.4
    

    注:该版本组合已适配Python 3.12,若仍有问题可查看PyPI上的最新兼容版本信息。

  • 使用conda安装(推荐)
    通过conda的conda-forge频道获取适配Python 3.12的预编译包,避免编译错误:

    conda install -c conda-forge pyqt5-tools
    

内容的提问来源于stack exchange,提问作者Ihab Khelifa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 01:54:52