2015-03-02 4 views
1

Ошибка при компиляции скрипта python в приложение Mac с использованием py2app on (OS X 10.10) компиляция работает до конца, но дает сообщение об ошибке.py2app Модули не найдены во время компиляции на OSX 10

установка сумы:

from setuptools import setup 

APP = ['Main.py'] 
OPTIONS = {'iconfile':'LOGO.icns',} 

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

На главном скрипте я только импортировать 3 модуля:

import os 
from tkFileDialog import askdirectory 
from Tkinter import Tk 

Я запустить сценарий установки в терминале, он создает 2 папки (сборка и Dist), полный файлов, но файл приложения внутри Dist не делает ничего, даже сообщение об ошибке.

Когда я компиляции я получаю эту ошибку в самом конце, перед тем «Done»:

Modules not found (unconditional imports):
* main.requires (pdb)
* _weakref.CallableProxyType (_weakrefset)
*_weakref.ProxyType (_weakrefset)
* _weakref.ReferenceType (_weakrefset)
* _weakref.getweakrefcount (_weakrefset)
*_weakref.getweakrefs (_weakrefset)
* _weakref.proxy (_weakrefset)
* errno.EINVAL (os)
* errno.ENOENT (os)
* java.System (java.lang)
* nt._getfullpathname (os)
* nt._isdir (os)
* org (copy, org.python.core)
* org.PyStringMap (org.python)
* org.python (copy, pickle)
* org.python.core (pickle)
* org.python.core.PyStringMap (copy)
* pwd.getpwnam (getpass)
* sys.py3kwarning (os)
* thread._local (collections)
* thread.allocate_lock (collections)
* thread.stack_size (collections)
* urllib.parse (pkg_resources)

Modules not found (conditional imports):
* _md5 (hashlib)
* _sha (hashlib)
* importlib._bootstrap (pkg_resources)
* java (platform) * java.lang (platform)
* riscospath (os)

Если я запустить основной сценарий непосредственно из терминала основной скрипт работает.

Любые идеи?

ответ

1

, похоже, вызвано слишком длинным путем.

My application is in a path 61 chars long: 
$ pwd|wc -c 
     61 

и я получаю эту ошибку:

Modules not found (conditional imports): * importlib._bootstrap (pkg_resources)

И строительные работы, если удалить несколько символов в пути:

$ pwd|wc -c 
     59 

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

  • Нет связанных вопросов^_^