我正在尝试创建一个独立的 PySide6 应用程序可执行文件。我的设置是:
- Python venv
- 蟒蛇 3.9
- PySide 6.1.0
- 安装程序 4.3
- 64 位 Windows 10
这是一个像这样的简单脚本:
from PySide6.QtCore import *
from PySide6.QtGui import *
from PySide6.QtWidgets import (QWidget, QApplication)
import sys
class Window(QWidget):
def __init__(self):
super(Window, self).__init__()
self.setWindowTitle("hellooo")
if __name__== "__main__":
app = QApplication([])
win = Window()
win.show()
sys.exit(app.exec_())
该应用程序作为脚本运行良好。但是当我使用 Pyinstaller 将其转换为 exe 时,如下所示:
pyinstaller --onefile --debug=all --windowed --console hello.py
该应用程序不会立即启动并退出,并且不会出现任何有意义的错误。控制台输出是这样的:
[12384] LOADER: Setting sys.argv
[12384] LOADER: setting sys._MEIPASS
[12384] LOADER: importing modules from CArchive
[12384] LOADER: extracted struct
[12384] LOADER: callfunction returned...
[12384] LOADER: extracted pyimod01_os_path
[12384] LOADER: callfunction returned...
[12384] LOADER: extracted pyimod02_archive
[12384] LOADER: callfunction returned...
[12384] LOADER: extracted pyimod03_importers
[12384] LOADER: callfunction returned...
[12384] LOADER: Installing PYZ archive with Python modules.
[12384] LOADER: PYZ archive: PYZ-00.pyz
[12384] LOADER: Running pyiboot01_bootstrap.py
[12384] LOADER: Running pyi_rth_multiprocessing.py
[12384] LOADER: Running pyi_rth_certifi.py
[12384] LOADER: Running main_window.py
[408] LOADER: Back to parent (RC: -1073741819)
[408] LOADER: Doing cleanup
我的实际应用比这更复杂。我只是使用上面的示例来查看它是否可以作为 exe 工作,但两者都有相同的问题。
注意:我查看了本网站和其他地方的所有相关问题,但没有任何帮助。
注意:下面第一条评论中提到的关于 qt platform not found 的问题不是我遇到的问题。正如我在下面的评论中提到的那样,我已经解决了这个特定的错误。