Я впервые использую pyinstaller. Моя цель - создать приложение в Mac Mountain Lion. Приложение представляет собой графический интерфейс, написанный на PySide, и у меня есть около 7 различных скриптов Python + 1 файл .png. Основной файл вызывает 4 файла, а 4 файла повторно вызывают остальные 2 файла. Файл .png - это не что иное, как логотип окна. Может ли кто-нибудь помочь мне с диагнозом? Я не знаю, что пошло не так. Я просмотрел множество документов в Интернете, например, изменить спецификацию, добавить импорт и т. Д., Но мое приложение все еще не запускается.
К вашему сведению, Pyinstaller может сгенерировать для меня приложение, но есть две проблемы:
- Иконка приложения не изменилась.
- Приложение вылетает при открытии.
Моя версия Python - 2.7.5, и я использую PyInstaller-2.0. Вот мой код для упаковки:
python pyinstaller.py --onefile --windowed --name=MyApplication -i ~/Documents/AASource/icon.ico ~/Documents/AASource/Scripts/main_file.py
Вот файл спецификации:
# -*- mode: python -*-
a = Analysis(['/Users/boxuancui/Documents/AASource/Scripts/main_file.py'],
pathex=['/Users/boxuancui/Documents/pyinstaller-2.0'],
hiddenimports=[],
hookspath=None)
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name=os.path.join('dist', 'MyApplication'),
debug=False,
strip=None,
upx=True,
console=False , icon='/Users/boxuancui/Documents/AASource/icon.ico')
app = BUNDLE(exe,
name=os.path.join('dist', 'MyApplication.app'))
Вот часть сообщения о сбое:
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000000054d8
Заранее спасибо! Любая помощь будет оценена по достоинству!
ОБНОВЛЕНИЕ 1. Я сузил проблему до следующего: всякий раз, когда я пытался выполнить следующие операции импорта, созданное приложение вылетало из строя. Кто-нибудь знает почему?
import pandas.rpy.common as com
import pandas.io.sql as psql
import rpy2.robjects as robjects
ОБНОВЛЕНИЕ 2: Я внимательно смотрю на pandas.io.sql
. Такого модуля не существует. Вот почему PyInstaller не может его найти. Где я могу найти этот файл? Точно так же отсутствуют rpy2.objects
и pandas.rpy.common
.