ВОПРОС · Q&A

Проблема с Pygame при упаковке в exe

7 ответов 3,5 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Автор вопроса
Решил попробовать написать свою первую игру на пайтоне, но при упаковке файла в exe через pyinstaller выскакивает предупреждение WARNING: Hidden import "pygame._view" not found! . Далее при запуске exeшника как только доходит до загрузки звуков через mixer.Sound вылезает ошибка pygame.error: Unable to open file 'sounds/pistol.ogg'. Поискал такую ошибку в гугле, там в коде просто забыли прописать pygame.init(), у меня прописано, облазил весь интернет, так и не смог разобраться. Буду благодарен каждому совету
 
Я точно не знаю, но по моему PyInstaller поддерживает не все форматы файлов
 
Ты "компилировал" все в один .ехе ? Покажи структуру своего проекта и структуру что есть на выходе после pyinstaller'a.
А что касается ошибки, то там явно написано какой файл не может найти твоя программа.
п.с.
Если засунул все в один.ехе то можешь попробовать рядом с ним создать папку sounds и сунуть туда свой pistol.ogg
 
Ты "компилировал" все в один .ехе ? Покажи структуру своего проекта и структуру что есть на выходе после pyinstaller'a.
А что касается ошибки, то там явно написано какой файл не может найти твоя программа.
п.с.
Если засунул все в один.ехе то можешь попробовать рядом с ним создать папку sounds и сунуть туда свой pistol.ogg
Да я так и делал, я в exe паковал только файл с кодом, а рядом с ним у меня папки images и sounds c картинками и звуками соответственно. Картинки нормально загружаются, а со звуками чёт беда. Программа может найти этот файл, но не может его открыть, причём она не может открыть ни один из звуковых файлов. Там именно Unable to open в ошибке
 
Да я так и делал, я в exe паковал только файл с кодом, а рядом с ним у меня папки images и sounds c картинками и звуками соответственно. Картинки нормально загружаются, а со звуками чёт беда. Программа может найти этот файл, но не может его открыть, причём она не может открыть ни один из звуковых файлов. Там именно Unable to open в ошибке
До "компиляции" она открыть его могла ?
 
Да, через обычный файл с кодом всё работает
Скорее всего, pyinstaller не подтягивает из пайчарама что-то, что как раз таки и отвечает за обработку саундов. Единственное что я могу тебе предложить, это скомпилить не в один файл а в сам код переписать с возможностью логирования всевозможных ексепшинов. В противном случае, это будет все вилами по воде.
 
Скорее всего, pyinstaller не подтягивает из пайчарама что-то, что как раз таки и отвечает за обработку саундов. Единственное что я могу тебе предложить, это скомпилить не в один файл а в сам код переписать с возможностью логирования всевозможных ексепшинов. В противном случае, это будет все вилами по воде.
Ок, спасибо