Я попытался создать тестовый исполняемый файл с помощью команды pyinstaller -F helloQT.py
, использующей QT, и получаю следующую ошибку:
$ ./helloQT.exe
Traceback (most recent call last):
File "helloQT.py", line 2, in <module>
ModuleNotFoundError: No module named 'Qt'
[12884] Failed to execute script helloQT
Вот мой исходный файл:
import sys
from Qt.QtWidgets import QApplication, QWidget, QLabel
def window():
app = QApplication(sys.argv)
w = QWidget()
b = QLabel(w)
b.setText("Hello World!")
w.setGeometry(100, 100, 200, 50)
b.move(50, 20)
w.setWindowTitle("PyQt")
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
window()
Поэтому я использую python 3.8.2 с пакетами:
Package Version
-------------- ---------
pip 20.0.2
PyInstaller 3.6
PySide2 5.14.2
Qt.py 1.2.5
(у меня есть несколько других пакетов, но я думаю, что они уместны)
Запуск стандартным способом python helloQT.py
приводит к ожидаемому выполнению:
Что мне нужно сделать по-другому, чтобы это правильно выполнялось? В конечном итоге я пытаюсь заставить большую программу изложения, основанную на абстракции QTpy для PySide2, запускать таким образом, но у меня были проблемы. Я надеюсь лучше понять эту проблему с игрушкой, прежде чем атаковать мой более крупный проект.