【发布时间】:2019-09-27 06:00:43
【问题描述】:
该应用程序在作为脚本运行时运行良好,并且还通过终端编译了 macOS 可执行文件。但是,当我将其作为 .app 进行单击时,某些事情会出现意外行为。如何调试这个,例如查看打印语句?
【问题讨论】:
标签: python pyqt pyqt5 pyinstaller
该应用程序在作为脚本运行时运行良好,并且还通过终端编译了 macOS 可执行文件。但是,当我将其作为 .app 进行单击时,某些事情会出现意外行为。如何调试这个,例如查看打印语句?
【问题讨论】:
标签: python pyqt pyqt5 pyinstaller
要查看已编译 PyInstaller 应用的打印语句,您必须在 .spec 文件中设置 console=True,并且您应该在 .spec 文件而不是 .py 文件上运行 pyinstaller。
也就是说,pyinstaller 自动生成的 .spec 文件默认为 console=True,所以我怀疑您正在寻找如何直接在 OSX 上运行二进制文件。为此,您必须运行位于 .app 包中的二进制文件,而不是应用包本身。
OSX 上的每个 .app 实际上都是一个目录。例如,您会在以下位置找到二进制文件:
myApplication.app/Contents/MacOS/myApplication
如果您在终端中运行它,您将看到打印语句回显到终端。
重要提示:几乎每个 OSX 应用程序包都遵循这个想法:.app/Contents/MacOS/
【讨论】: