py2app问题,出现错误

崩溃的

我正在尝试测试py2app的功能,以创建独立的mac应用程序。我为测试代码生成了一个名为“ hello.py”的安装文件。

"""
This is a setup.py script generated by py2applet

Usage:
python setup.py py2app
"""

from setuptools import setup

APP = ['hello.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True}

setup(
   app=APP,
   data_files=DATA_FILES,
   options={'py2app': OPTIONS},
   setup_requires=['py2app'],
)

而且我正在尝试制作一个简单的应用程序,该应用程序仅通过GUI来向您问好世界。这是hello.py的代码

import sys
from PyQt4 import QtGui
from PyQt4 import QtCore

app = QtGui.QApplication(sys.argv)

widget = QtGui.QLabel("Hello World")
widget.show()


app.exec_()

上面的脚本运行得很好,但是当我尝试使用py2app时,出现了一些错误。当我运行'python setup.py py2app'

WARNING: ImportError in sip recipe ignored: No module named py2app-0
WARNING: ImportError in sip recipe ignored: No module named Sphinx-1
WARNING: ImportError in sip recipe ignored: No module named decorator-4
WARNING: ImportError in sip recipe ignored: No module named altgraph-0
WARNING: ImportError in sip recipe ignored: No module named matplotlib-1
WARNING: ImportError in sip recipe ignored: No module named alabaster-0
WARNING: ImportError in sip recipe ignored: No module named modulegraph-0
WARNING: ImportError in sip recipe ignored: No module named Jinja2-2
WARNING: ImportError in sip recipe ignored: No module named jedi-0
WARNING: ImportError in sip recipe ignored: No module named pickleshare-0
WARNING: ImportError in sip recipe ignored: No module named macholib-1
WARNING: ImportError in sip recipe ignored: No module named Babel-1
WARNING: ImportError in sip recipe ignored: No module named sphinx_rtd_theme-0
WARNING: ImportError in sip recipe ignored: No module named pip-7
WARNING: ImportError in sip recipe ignored: No module named wheel-0
WARNING: ImportError in sip recipe ignored: No module named python_dateutil-2

发生这些错误后,py2app似乎可以正常运行,但是应用程序本身无法正常工作。这里发生了什么?我该如何解决?

这也是终端输出的最后一行。

Traceback (most recent call last):
File "setup.py", line 18, in <module>
setup_requires=['py2app'],
File "/Users/Apollo/miniconda/lib/python2.7/distutils/core.py", line 151, in          setup
dist.run_commands()
File "/Users/Apollo/miniconda/lib/python2.7/distutils/dist.py", line 953, in   run_commands
self.run_command(cmd)
File "/Users/Apollo/miniconda/lib/python2.7/distutils/dist.py", line 972, in   run_command
cmd_obj.run()
File "/Users/Apollo/miniconda/lib/python2.7/site- packages/py2app/build_app.py", line 659, in run
self._run()
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/py2app/build_app.py", line 865, in _run
self.run_normal()
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/py2app/build_app.py", line 959, in run_normal
self.create_binaries(py_files, pkgdirs, extensions, loader_files)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/py2app/build_app.py", line 1214, in create_binaries
platfiles = mm.run()
File "/Users/Apollo/miniconda/lib/python2.7/site- packages/macholib/MachOStandalone.py", line 105, in run
mm.run_file(fn)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOGraph.py", line 84, in run_file
self.scan_node(m)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOGraph.py", line 110, in scan_node
m = self.load_file(filename, caller=node)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOGraph.py", line 93, in load_file
newname = self.locate(name, loader=caller)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOStandalone.py", line 23, in locate
newname = super(FilteredMachOGraph, self).locate(filename, loader)
File "/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOGraph.py", line 49, in locate
loader=loader.filename)
TypeError: dyld_find() got an unexpected keyword argument 'loader'
西帕特

有一个小技巧可以解决这个问题,

  1. 转到您的路径/Users/Apollo/miniconda/lib/python2.7/site-packages/macholib/MachOGraph.py并打开此文件。
  2. 在第49行,更改loader=loader.filenameloader_path=loader.filename

再次运行setup.py。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Python和py2app创建独立的macOS应用程序

py2app:modulegraph缺少scan_code

(将.app移至另一台计算机时,PyQt4,py2app和pyinstaller崩溃

py2app TypeError:dyld_find()得到了意外的关键字参数'loader'

python manage.py migration出现问题->没有名为psycopg2的模块

某些Mac上的py2app在打开时“意外退出”

如何将py2app与Anaconda python一起使用?

在不使用python的情况下将py2app应用程序发送到Mac

向Models.py添加DateField时出现“函数缺少必需的参数'month'(pos 2)”错误

Py2App将PIL Dylibs放在Zip文件中

py2app:如何使用捆绑的python解释器运行测试?

py2app pyqt缺少库,应用程序无法在Mac OS X上启动

当应用程序已经在运行时,如何在基于py2app的Python应用程序中接受“打开文档”事件?

我不知道如何获取Py2app

找不到与py2app的模块(有条件导入)

使用py2app时,在两个地方都实现了类

Angular 2 ngControl的minlength错误验证器出现问题

使用py2app冻结使用pdfkit的python脚本时出现问题

从Applescript或Py2app执行时,MAC OS和Python脚本无法读取文件

wavfile.py出现问题,显示意外错误

使用python 3.6 + py2app:为什么会生成pyc文件?

py2app 中 popen 的权限问题

py2app 中的错误

Py2App - PyQt5 使用错误的 port_v#

mac:py2app 找不到 cacert.pem

导入错误:使用 py2app 时没有名为“google-api-python-client”的模块

py2app 应用程序运行时会报错

Py2App 错误:ModuleNotFoundError:使用 Pandas 时没有名为“cmath”的模块

错误:配置项目“:app”时出现问题