Python 安装PyQt

Python 安装PyQt,python,qt,pyqt,qmake,Python,Qt,Pyqt,Qmake,我正试图在我的mac上安装PyQt,以便安装python ghost。我已经安装了Qt和SIP。我已经下载了PyQt,但是当我运行 python configure-ng.py 我得到以下错误: Error: Use the --qmake argument to explicitly specify a working Qt qmake. 关于我应该做什么有什么想法吗?既然你在Mac电脑上,我会用。这在前几天对我来说很有效,但花了很长时间才完成: brew install pyqt

我正试图在我的mac上安装PyQt,以便安装python ghost。我已经安装了Qt和SIP。我已经下载了PyQt,但是当我运行

python configure-ng.py    
我得到以下错误:

Error: Use the --qmake argument to explicitly specify a working Qt qmake.

关于我应该做什么有什么想法吗?

既然你在Mac电脑上,我会用。这在前几天对我来说很有效,但花了很长时间才完成:

brew install pyqt

configure ng.py
需要
qmake
sip
来配置构建过程

错误消息表示
configure ng.py
无法找到
qmake
可执行文件。您需要指定其位置,如下所示:

$python configure-ng.py--qmake=/path/to/qmake

qmake的位置取决于1)安装方式和2)使用的操作系统


对于Mac操作系统,比较省力的方法(在我的例子中)是使用自制软件安装
sip
qmake

$brew安装sip

$brew安装qt

brew
将在以下目录中安装它们:
/usr/local/ceral/

然后,运行
configure ng.py
,指定两个位置:

$ python configure-ng.py --qmake=/usr/local/Cellar/qt/VERSION/bin/qmake --sip=/usr/local/Cellar/sip/VERSION/bin/sip
如果一切正常,请继续PyQt安装:

$ make 
make
需要一段时间(就我而言大约需要20分钟)

最后,安装:

$ make install
make
可能需要管理员权限
$sudo make


没有使用PyCharm IDE的命令行。而且我不需要安装Qt.:

  • 下载Python 3.6.1(双击安装)
  • 下载PyCharm IDE(双击以安装)。
    • 转到PyCharm>首选项>项目解释器
    • 将项目解释器路径指向python.3.6.1
    • “+”按钮,搜索pyqt5。选择PyQt5版本5.8.2,然后单击安装软件包

它将自动安装PyQt 5.8.2和SIP。刚安装完之后,请返回项目解释器,并确保也安装了SIP。如果未安装:“+”按钮并安装sip

请尝试此代码,看看它是否也适用于您。:)


您应该明确指定一个工作Qt make。我该怎么做?我是下载qmake还是创建自己的qmake?我对Qt不是很熟悉。@user3417176。qmake是Qt的一部分。您需要使用类似于
--qmake path/to/qt/bin/qmake
的方式指定它的路径。它应该位于安装qt的位置。我认为如果您没有在其他地方指定,它将默认为您的主目录
python configure.py--qmake~/Qt/5.2.1/clang_64/bin/qmake
如果它不在主目录中,那么它可能会在/usr/local的某个地方。毫无疑问,这对虚拟环境不好。我最近发现了允许虚拟环境访问全局安装的pyqt库的和包。使用由提供的二进制安装程序对我来说非常适合。
#!/usr/bin/env python3

from PyQt5.QtWidgets import QLabel, QVBoxLayout, QWidget
from PyQt5.QtCore import Qt


class Example(QWidget):

def __init__(self):
    super().__init__()
    self.initUI()

def initUI(self):
    self.setFixedSize(200, 100)
    self.setWindowTitle('Example')
    label = QLabel('Hello')
    layout = QVBoxLayout()
    layout.addWidget(label)
    layout.setAlignment(Qt.AlignCenter)
    self.setLayout(layout)


if __name__ == '__main__':

import sys
from PyQt5.QtWidgets import QApplication

app = QApplication(sys.argv)
ex = Example()
ex.show()
sys.exit(app.exec_())