打包的python .app文件崩溃,但打包的python .sh文件工作正常
发布时间:2020-12-20 13:49:32 所属栏目:Python 来源:网络整理
导读:我在OS X Yosemite上使用 Python 3.4.3,Pyqt4和其他一些附加功能(其中包括Poppler)制作了一个应用程序. 我正在使用cx_freeze生成一个有效的.app文件,最终生成一个有效的msi文件.在使用build命令构建它之后,我一直在测试应用程序正常工作,如“python3 setup.p
我在OS X Yosemite上使用
Python 3.4.3,Pyqt4和其他一些附加功能(其中包括Poppler)制作了一个应用程序.
我正在使用cx_freeze生成一个有效的.app文件,最终生成一个有效的msi文件.在使用build命令构建它之后,我一直在测试应用程序正常工作,如“python3 setup.py build”中所示.这一切都很好,没有意外的崩溃. Process: main [1098] Path: /Users/USER/*/FYP-0.1.app/Contents/MacOS/main Identifier: main Version: 0 Code Type: X86-64 (Native) Parent Process: ??? [1] Responsible: main [1098] User ID: 501 Date/Time: 2015-05-12 02:18:16.867 +0100 OS Version: Mac OS X 10.10.3 (14D131) Report Version: 11 Anonymous UUID: 8A613A61-D35F-9A4C-8E97-57069A95BF20 Time Awake Since Boot: 1300 seconds Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000 VM Regions Near 0: --> __TEXT 0000000103135000-0000000103138000 [ 12K] r- x/rwx SM=COW /Users/USER/*/FYP-0.1.app/Contents/MacOS/main Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 QtGui 0x000000010ecf126b QApplication::setActiveWindow(QWidget*) + 315 1 QtGui 0x000000010ec90b7d onApplicationWindowChangedActivation(QWidget*,bool) + 100 2 com.apple.CoreFoundation 0x00007fff8e99045c __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12 3 com.apple.CoreFoundation 0x00007fff8e880634 _CFXNotificationPost + 3140 4 com.apple.Foundation 0x00007fff94cd29d1 -[NSNotificationCenter postNotificationName:object:userInfo:] + 66 5 com.apple.AppKit 0x00007fff9048dbd9 -[NSWindow becomeKeyWindow] + 1406 6 com.apple.AppKit 0x00007fff9048cf3e -[NSWindow _changeKeyAndMainLimitedOK:] + 795 7 com.apple.AppKit 0x00007fff9048cb36 -[NSWindow _makeKeyRegardlessOfVisibility] + 98 8 com.apple.AppKit 0x00007fff9048ca9e -[NSWindow makeKeyAndOrderFront:] + 27 9 QtGui 0x00000001045cfea7 QWidgetPrivate::show_sys() + 629 10 QtGui 0x000000010466c39c QWidgetPrivate::show_helper() + 432 11 QtGui 0x000000010466ccce QWidget::setVisible(bool) + 800 12 PyQt4.QtGui.so 0x0000000103f40634 sipQMainWindow::setVisible(bool) + 100 13 PyQt4.QtGui.so 0x00000001040f7ed9 meth_QWidget_show(_object*,_object*) + 105 14 Python 0x0000000103315ad5 PyEval_EvalFrameEx + 22129 15 Python 0x0000000103318f12 fast_function + 203 16 Python 0x0000000103315964 PyEval_EvalFrameEx + 21760 17 Python 0x00000001033102ad PyEval_EvalCodeEx + 1622 18 Python 0x000000010329e7ab function_call + 372 19 Python 0x000000010327e576 PyObject_Call + 103 20 Python 0x000000010328fca8 method_call + 136 21 Python 0x000000010327e576 PyObject_Call + 103 22 Python 0x00000001032c45b2 slot_tp_init + 57 23 Python 0x00000001032c1b48 type_call + 172 24 Python 0x000000010327e576 PyObject_Call + 103 25 Python 0x000000010331582a PyEval_EvalFrameEx + 21446 26 Python 0x00000001033102ad PyEval_EvalCodeEx + 1622 27 Python 0x000000010330fc51 PyEval_EvalCode + 63 28 Python 0x000000010330d6e3 builtin_exec + 536 29 Python 0x0000000103315ad5 PyEval_EvalFrameEx + 22129 30 Python 0x00000001033102ad PyEval_EvalCodeEx + 1622 31 Python 0x000000010330fc51 PyEval_EvalCode + 63 32 main 0x0000000103136cc5 main + 1957 33 libdyld.dylib 0x00007fff986995c9 start + 1 Thread 1:: Dispatch queue: com.apple.libdispatch-manager 0 libsystem_kernel.dylib 0x00007fff91651232 kevent64 + 10 1 libdispatch.dylib 0x00007fff96fd0a6a _dispatch_mgr_thread + 52 Thread 2: 0 libsystem_kernel.dylib 0x00007fff9165094a __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff92c4e40d start_wqthread + 13 Thread 3: 0 libsystem_kernel.dylib 0x00007fff9165094a __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff92c4e40d start_wqthread + 13 Thread 4: 0 libsystem_kernel.dylib 0x00007fff9165094a __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff92c4e40d start_wqthread + 13 Thread 5: 0 libsystem_kernel.dylib 0x00007fff9165094a __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff92c4e40d start_wqthread + 13 Thread 6: 0 libsystem_kernel.dylib 0x00007fff9165094a __workq_kernreturn + 10 1 libsystem_pthread.dylib 0x00007fff92c4e40d start_wqthread + 13 Thread 0 crashed with X86 Thread State (64-bit): rax: 0x0000000000000000 rbx: 0x00007fbe8322a670 rcx: 0x00007fbe8326d0a0 rdx: 0x0000000000000002 rdi: 0x00007fbe8322a670 rsi: 0x0000000000000001 rbp: 0x00007fff5cac8ea0 rsp: 0x00007fff5cac8df0 r8: 0x0000000000000000 r9: 0x00007fbe830f90a0 r10: 0x0000000000000011 r11: 0x00007fff7bbdc190 r12: 0x00007fbe8322a670 r13: 0x00000000000f42cd r14: 0x00007fbe83296370 r15: 0x000000010f578228 rip: 0x000000010ecf126b rfl: 0x0000000000010202 cr2: 0x0000000000000000 Logical CPU: 0 Error Code: 0x00000004 Trap Number: 14 有更多的负载,但我不确定有多大相关性.这是我的setup.py文件: from cx_Freeze import setup,Executable import sys import os base = None if sys.platform == "win32": base = "Win32GUI" zips = ["implementation/primaries/GUI/designer_files","implementation/primaries/GUI/themes","implementation/primaries/GUI/images","implementation/primaries/scripts"] build_exe_options = {"packages": ["os"],"excludes": ["tkinter"],"include_files":zips} setup( name='FYP',version='0.1',packages=['implementation','implementation.primaries','implementation.primaries.GUI','implementation.primaries.scripts','implementation.primaries.GUI.pyqt_plugins','implementation.primaries.Drawing','implementation.primaries.Drawing.classes','implementation.primaries.Drawing.classes.tree_cls','implementation.primaries.ExtractMetadata','implementation.primaries.ExtractMetadata.classes','implementation.primaries.ImportOnlineDBs','implementation.primaries.ImportOnlineDBs.classes'],description='MuseLib',options = {"build_exe": build_exe_options},executables = [Executable("implementation/main.py",base=base)] ) 不知道问题是什么,我看到其他一些人有类似的问题,但他们似乎是旧版本的Python或旧版本的OS X,修复程序并没有解决我的问题.任何有关如何进行的建议将不胜感激. 解决方法
找到一种更好的调试方法:右键单击app文件,“查看包内容”,MacOS>选择与setup.py中给出的文件同名的可执行文件(对我来说这是主要的).
我得到的错误: QWidget:必须在QPaintDevice之前构造QApplication 我通过初始化我的Application对象,然后初始化我的主窗口对象,然后显示主窗口,然后调用设置窗口的加载方法来修复此问题.我最初在构造函数中做了那个部分,由于某种原因给出了问题.我现在遇到打开/关闭窗口以及关闭时打开其他窗口的问题,但这可能是谷歌搜索的另一个问题或会话的最佳选择. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |