#python #pyinstaller
#питон #pyinstaller
Вопрос:
Я создаю приложение PyQt5 и связываю его с PyInstaller. Приложение разделено на две части: GUI.py и main.py. После отправки диалога, GUI.py позвоню main.py.
Однако входящий в комплект исполняемый файл не смог разрешить main.py импорт.
# GUI.py from main_file import main ### GUI STUFF ###
Мой файл спецификаций выглядит примерно так.
a = Analysis(['GUI.py', 'main_file.py'], pathex=[], binaries=collect_dynamic_libs("rtree"), datas=collect_data_files('geopandas', subdir='datasets'), hiddenimports=hidden_imports, hookspath=[], runtime_hooks=['hook.py'], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False)
Как PyInstaller импортирует дополнительные сценарии за пределами точки входа исполняемого файла? Есть ли что-то, что нужно указать в файле .spec? Должен ли синтаксис импорта отличаться? Или мне следует использовать путь к ресурсу _MEIPASS для импорта других сценариев?
Комментарии:
1. Вы пробовали запустить pyinstaller нормально?
2. То есть без каких-либо специальных файлов и просто с использованием флага onefile/onedir? У меня слишком много скрытого импорта и зависимостей, так что об этом не может быть и речи.
3. Мое понимание PyInstaller доходит до того, что он автоматически сканирует и ищет все необходимые библиотеки и включает их.