【问题标题】:How can I install PyQt5 on Mac?如何在 Mac 上安装 PyQt5?
【发布时间】:2016-04-07 15:10:44
【问题描述】:

我正在尝试在我的 Mac 上安装 PyQt5,但我不知道如何使用它。我试图安装 sip 做

cd ~/Downloads/sip-4.17
python configure.py

成功了,然后我尝试了

cd ~/Downloads/PyQt-gpl-5.5.1
python configure.py --qmake /Users/name/Qt/5.5/clang_64/bin/qmake

返回一个错误,上面写着

确保您的 PATH 上有一个有效的 sip,或使用 --sip 参数明确指定一个有效的 sip。

如何解决此错误?我没有安装 sip 吗?

【问题讨论】:

    标签: python macos terminal pyqt installation


    【解决方案1】:

    我有点回避这个问题,但最简单的方法是安装Homebrew,然后运行brew install pyqt 或brew install pyqt5。

    【讨论】:

    • 免责声明:这将在您的系统上安装 python 3.x,因为它似乎被列为依赖项。我自己很惊讶,因为我认为 PyQT5 支持 python>2.6。不确定是菜鸟还是愚蠢。
    • 如何在我的 python 脚本中导入这个?我的代码找不到模块。
    • @TinoCaer 可能你运行了错误的 python;试试python --version,看看是否匹配你的QT版本要求的python
    • 对不起,我真的认为克里斯蒂安的回答更好。 pip3 更干净、更快、更简单。
    • 谢谢,蒂姆!并且值得一提的是,它确实违反了 Python 的安装方式。与此同时,人们也在尝试使用自制软件构建 PySide2 安装。多么糟糕的主意,因为我们正在为 Python 构建轮子。所有平台都应该有一个标准方式...
    【解决方案2】:

    你需要先安装SIP,不只是运行configure.py:

    >>> cd ~/Downloads/sip-4.17
    >>> python configure.py
    >>> make
    >>> make install
    

    然后就可以安装PyQt5了:

    >>> cd ~/Downloads/PyQt-gpl-5.5.1
    >>> python configure.py --qmake /Users/name/Qt/5.5/clang_64/bin/qmake
    >>> make
    >>> make install
    

    【讨论】:

    • 是的,这应该是公认的答案。我认为使用 brew 安装 PyQt 会有点混乱(将 brew 用于 python lib 是一个坏主意 IMO)。可以使用 brew 安装 Qt,但公式不是最新的 pyqt 源(5.8.0 vs 5.8.2)
    • 所以我只是尝试了这个,但我无法真正设法以这种方式安装它。最后我只需要输入sudo python3 pip3 install PyQt5
    • @Rich_Rich 你应该避免使用 sudo。使用 Python,您可以安装一次 virtualenv,然后一直使用它。但是,如果您的 brew 命令安装正确(使用 brew doctor 进行检查!),那么即使没有 virtualenv 和 sudo,酿造的 Python 也应该可以正常工作。
    【解决方案3】:

    同时我有在 macOS 上安装 PyQt5 的终极方法。 不要使用Homebrew。它非常适合安装 Qt5,但对于 PyQt5,最好的安装方法是使用

    python3 -m pip install PyQt5
    

    这工作非常迅速,并使用通用 Python Wheels:

    Collecting PyQt5
      Downloading PyQt5-5.9-5.9.1-cp35.cp36.cp37-abi3-macosx_10_6_intel.whl 
    (82.2MB)
        100% |████████████████████████████████| 82.2MB 17kB/s 
    Collecting sip<4.20,>=4.19.3 (from PyQt5)
      Downloading sip-4.19.3-cp36-cp36m-macosx_10_6_intel.whl (49kB)
        100% |████████████████████████████████| 51kB 1.2MB/s 
    Installing collected packages: sip, PyQt5
    Successfully installed PyQt5-5.9 sip-4.19.3
    

    你看:这样的轮子被 CPython 3.5、3.6 和 3.7 重用了。

    老话,但见下文:PySide2 还没有那么远,但是当我们准备好第一个版本时,我们会构建类似的轮子。

    添加于 2017/09/25:你当然也可以使用

    pip3 install PyQt5
    

    但当时我的 pip/pip2/pip3 链接有点乱,所以第一个解决方案坚如磐石,避免了混乱。

    同样正确的是,您并不总是以这种方式获得最新版本的 PyQt5。但对于开始而言,首要任务是快速获得结果,而不是最前沿。

    更新:PySide2 现在正式有了轮子,以:

    $ python3 -m pip install PySide2
    Collecting pyside2
      Downloading https://files.pythonhosted.org/packages/2a/e2/2dc134a5c475f661d5ff2ab587fbd2c285db3d064e03ac9b4a2ee0958400/PySide2-5.12.2-5.12.2-cp35.cp36.cp37-abi3-macosx_10_12_intel.whl (109.8MB)
        100% |████████████████████████████████| 109.8MB 238kB/s 
    Collecting shiboken2==5.12.2 (from pyside2)
      Downloading https://files.pythonhosted.org/packages/bd/8b/a2ad76c3a935fae51f0ed9b150a9df08167c4550fcd07637f0db19c31849/shiboken2-5.12.2-5.12.2-cp35.cp36.cp37-abi3-macosx_10_12_intel.whl (691kB)
        100% |████████████████████████████████| 696kB 1.6MB/s 
    Installing collected packages: shiboken2, pyside2
    Successfully installed pyside2-5.12.2 shiboken2-5.12.2
    

    如果您发现两者之间的错误或差异,请随时打开错误报告。按照https://wiki.qt.io/Qt_for_Python/Reporting_Bugs上的说明进行操作

    【讨论】:

    • 不,就我而言。 SIP 没有遵循。稍后我必须自制。
    • 这不是真的。我刚刚又试了一次。像 pip 的魅力一样工作。只有一个缺点:您只能使用 brew 版本获得 .pyi 存根文件。
    • » pip install PyQt5 Collecting PyQt5 找不到满足 PyQt5 要求的版本(来自版本:)找不到 PyQt5 的匹配分布
    • 请耐心等待我提出一个非常不知情的问题。是否会安装开始使用 Python 3 和 Qt 所需的所有内容,还是只是为单独安装和假定存在的 Qt5 安装提供 Python 绑定?
    • @mico 我认为它也会在 Windows 上安装 PyQt5 和 Qt5,至少 PySide2 会这样做。你需要自己安装 Python 3.X。
    【解决方案4】:

    在~/.pip/pip.log我发现:

    Skipping https://pypi.python.org/packages/... (from https://pypi.python.org/simple/pyqt5/) because it is not compatible with this Python
    

    只需从官网安装新版本的 Python 3,pip3 install PyQt5 终于可以使用了。

    【讨论】:

      【解决方案5】:

      Qt 是一组跨平台的 C++ 库,它们实现了用于访问现代桌面和移动系统的许多方面的高级 API。其中包括定位和定位服务、多媒体、NFC 和蓝牙连接、基于 Chromium 的网络浏览器以及传统的 UI 开发。

      PyQt5 是一套针对 Qt v5 的综合 Python 绑定。它以超过 35 个扩展模块的形式实现,使 Python 能够在所有支持的平台(包括 iOS 和 Android)上用作 C++ 的替代应用程序开发语言。

      PyQt5 也可以嵌入基于 C++ 的应用程序中,以允许这些应用程序的用户配置或增强这些应用程序的功能。

           brew install PyQt5 (or) pip3 install PyQt5
      

      【讨论】:

        【解决方案6】:

        Qt 有一个包含所有组件的 Mac .dmg 安装程序。我首先卸载了我的 pip 版本,并将我的 Qt 安装到标准位置 - 我尝试按照另一篇文章的建议放入 /opt/Qt,但由于 Mojave 中 MacOS 权限的更改而失败。 Qt 项目旁边有一个扩展三角形,允许将 Designer 与 Qt 引擎以及 2D/3D 开发和平台特定工具分开安装。

        Qt 安装程序:

        https://www.qt.io/download-qt-installer

        【讨论】:

          猜你喜欢
          • 2015-02-04
          • 2013-05-26
          • 2021-09-19
          • 2021-05-28
          • 1970-01-01
          • 1970-01-01
          • 2021-08-09
          • 1970-01-01
          • 2019-10-13
          相关资源
          最近更新 更多