2014-09-22 2 views
4

Я пытаюсь развернуть мое приложение python с помощью py2app.Py2App: режим псевдонима работает, но развертывание не

Я создал файл установки с помощью: py2applet --make-setup MyApplication.py

Тогда я сделал это, чтобы проверить это: python setup.py py2app -A

что работал хорошо. Моя программа графического интерфейса работает.

Когда я пытаюсь последний шаг: python setup.py py2app

Я получаю эту ошибку жира.

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

Почему это происходит? Я потратил последние несколько часов на развертывание. Не повезло с py2app, cx_freeze и т. Д.

ответ

1

Подушка была проблемой. Py2Applet не играет с ним хорошо. Избавьтесь от подушки, и все хорошо.

+0

Не могли бы вы рассказать подробнее? – user86895

+2

У меня нет подушки, и я все еще получаю эту ошибку. – shrx

2

Вот обходной путь: отредактировать файл MachOGraph.py в вашем случае находится там:

/usr/local/lib/python2.7/site-packages/macholib/MachOGraph.py 

Искать термин loader=loader.filename) и заменить его loader_path=loader.filename)

кредитов идет на Дэвид Гольденберг для его сообщение на bitbucket.org. https://bitbucket.org/ronaldoussoren/py2app/issues/137/py2app-problems-using-enthought-python

Смежные вопросы