IndexError: tuple index out of range
...
File ".../PyInstaller/utils/osx.py", line 672, in collect_files_from_framework_bundles
dir_name = remaining_path_parts[2]
IndexError: tuple index out of range
Контекст:
Операционная система: macOS на Mac mini M2 (Apple Silicon)
Опробованные версии Python: 3.8, 3.9 и 3.12
PyInstaller Опробованные версии: 6.10.0 и 6.11.0
Цель: превратить приложение Python в исполняемый файл macOS, включая определенные ресурсы, такие как >Браузер Chromium и драйвер chrome для macOS (Intel и ARM).
...
9846 INFO: Looking for dynamic libraries
Traceback (most recent call last):
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/bin/pyinstaller", line 8, in
sys.exit(_console_script_run())
^^^^^^^^^^^^^^^^^^^^^
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 231, in _console_script_run
run()
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 215, in run
run_build(pyi_config, spec_file, **vars(args))
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 70, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 1227, in main
build(specfile, distpath, workpath, clean_build)
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 1167, in build
exec(code, spec_namespace)
File "./final_output/macos/build/pyinstaller.spec", line 28, in
a = Analysis(
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 558, in __init__
self.__postinit__()
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/datastruct.py", line 184, in __postinit__
self.assemble()
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 971, in assemble
combined_toc += osxutils.collect_files_from_framework_bundles(combined_toc)
File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/utils/osx.py", line 672, in collect_files_from_framework_bundles
dir_name = remaining_path_parts[2]
IndexError: tuple index out of range
Предпринятые на данный момент шаги:
Изменение версий Python : Я попробовал Python 3.8, 3.9 и 3.12, и все они привели к одной и той же ошибке.
Переключение версий PyInstaller : Пробовал использовать PyInstaller 6.10.0 и 6.11.0, обе безуспешно.
Переименование Chromium.app< /code>: Я переименовал Chromium.app в Chromium, чтобы PyInstaller не рассматривал его как пакет macOS, а затем обновил все ссылки в .spec и коде. Ошибка по-прежнему возникает.
Отключение UPX: Установите upx=False в .spec< /код> файл. Никакого эффекта.
Использование Tree из PyInstaller: Пробовал импортировать и использовать Tree чтобы добавить папку Chromium.app:
def collect_app_files(source_dir, target_dir):
files = []
for root, dirs, filenames in os.walk(source_dir):
for filename in filenames:
file_source = os.path.join(root, filename)
file_target = os.path.join(target_dir, os.path.relpath(root, source_dir))
files.append((file_source, file_target))
return files
К сожалению, это также не решило проблему.
Журнал отладки:< /strong> Запустил PyInstaller с --log-level=DEBUG для получения дополнительной информации, но никаких дополнительных подсказок не появилось.
Дополнительная информация:
Аппаратное обеспечение: Mac mini M2 (Apple Silicon) Цель: включить браузер Chromium (версии для Intel и ARM) в окончательную сборку приложения для macOS.
Вопросы:
Как устранить ошибку IndexError: индекс кортежа вне диапазона при построении с PyInstaller на macOS?
coll = COLLECT( exe, a.binaries, a.zipfiles, a.datas, upx=True, strip=False, name='example' ) [/code] [h4][b]Использованная команда:[/b][/h4] [code]pyinstaller ./final_output/macos/build/pyinstaller.spec --distpath ./final_output/macos --workpath ./final_output/macos/build [/code] [h4][b]Полная ошибка:[/b][/h4] [code]... 9846 INFO: Looking for dynamic libraries Traceback (most recent call last): File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/bin/pyinstaller", line 8, in sys.exit(_console_script_run()) ^^^^^^^^^^^^^^^^^^^^^ File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 231, in _console_script_run run() File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 215, in run run_build(pyi_config, spec_file, **vars(args)) File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/__main__.py", line 70, in run_build PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 1227, in main build(specfile, distpath, workpath, clean_build) File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 1167, in build exec(code, spec_namespace) File "./final_output/macos/build/pyinstaller.spec", line 28, in a = Analysis( File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 558, in __init__ self.__postinit__() File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/datastruct.py", line 184, in __postinit__ self.assemble() File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/building/build_main.py", line 971, in assemble combined_toc += osxutils.collect_files_from_framework_bundles(combined_toc) File "/Users/administrator/Desktop/example/desktop_app/app_src/.venv/lib/python3.12/site-packages/PyInstaller/utils/osx.py", line 672, in collect_files_from_framework_bundles dir_name = remaining_path_parts[2] IndexError: tuple index out of range [/code] [h4][b]Предпринятые на данный момент шаги:[/b][/h4] [list] [*][b]Изменение версий Python :[/b] Я попробовал Python 3.8, 3.9 и 3.12, и все они привели к одной и той же ошибке.
[*][b]Переключение версий PyInstaller :[/b] Пробовал использовать PyInstaller 6.10.0 и 6.11.0, обе безуспешно.
[*][b]Переименование Chromium.app< /code>:[/b] Я переименовал Chromium.app в Chromium, чтобы PyInstaller не рассматривал его как пакет macOS, а затем обновил все ссылки в .spec и коде. Ошибка по-прежнему возникает.
[*][b]Отключение UPX:[/b] Установите upx=False в .spec< /код> файл. Никакого эффекта.
[*][b]Использование Tree из PyInstaller:[/b] Пробовал импортировать и использовать Tree чтобы добавить папку Chromium.app: [code]from PyInstaller.utils.hooks import Tree [/code] Это привело к ошибке: [code]ImportError: cannot import name 'Tree' from 'PyInstaller.utils.hooks' [/code]
[*][b]Пользовательская функция для сбора файлов:[/b] Я использовал пользовательскую функцию для рекурсивного добавления файлов из Chromium.app
[*][b]Пользовательская функция для сбора файлов:[/b] Я использовал пользовательскую функцию для рекурсивного добавления файлов из Chromium.app
[*][b]Пользовательская функция для сбора файлов:[/b] Я использовал пользовательскую функцию для рекурсивного добавления файлов из Chromium.app
[*][b]Пользовательская функция для сбора файлов:[/b] Я использовал пользовательскую функцию для рекурсивного добавления файлов из Chromium.app
[*][b]Пользовательская функция для сбора файлов.[/b] код>: [code]def collect_app_files(source_dir, target_dir): files = [] for root, dirs, filenames in os.walk(source_dir): for filename in filenames: file_source = os.path.join(root, filename) file_target = os.path.join(target_dir, os.path.relpath(root, source_dir)) files.append((file_source, file_target)) return files [/code] К сожалению, это также не решило проблему.
[*][b]Журнал отладки:< /strong> Запустил PyInstaller с --log-level=DEBUG для получения дополнительной информации, но никаких дополнительных подсказок не появилось.
[/list] [h4]Дополнительная информация:[/b][/h4] [list] [*][b]Аппаратное обеспечение:[/b] Mac mini M2 (Apple Silicon) [b]Цель:[/b] включить браузер Chromium (версии для Intel и ARM) в окончательную сборку приложения для macOS. [/list] [h4][b]Вопросы:[/b][/h4] [list] [*]Как устранить ошибку IndexError: индекс кортежа вне диапазона при построении с PyInstaller на macOS? [*]Кто-нибудь сталкивался и решал подобную проблему? [/list] Спасибо за помощь в вперед!
Я пытался сделать фильтр шума, интегрированный с искусственным интеллектом. Но при компиляции следующего кода я столкнулся с ошибкой ниже. Как я могу решить эту проблему?
import librosa
import librosa.display
import numpy as np
import...
Ранее я реализовал SAC со стабильными базовыми линиями3 в специальной среде Gymnasium, и это сработало. Теперь я пытаюсь использовать JAX стабильного базового уровня3 (SBX) в той же среде, но сталкиваюсь с этой ошибкой во время инициализации модели...
Доброе утро, разработчики. Я знаю, что этот вопрос задавался раньше, но я не нашел решения своей проблемы в этих ответах. Сначала я хотел бы сказать вам, что я всего лишь новичок в Unity :p, ну, вот моя проблема: я создаю игру с разбиванием...
Здравствуйте!
У меня есть ошибка в коде Python, который выполняет доступ по SSH на одном из моих устройств и возвращает целое значение с количеством людей, подключенных к виртуальной локальной сети. Однако, если к этой виртуальной локальной сети...