Как создать дистрибутив приложения Python GTK3? - PullRequest
0 голосов
/ 09 апреля 2019

Я сделал приложение, используя GTK3 в Windows (установка GTK в Mingw_x64), и я не могу понять, как сделать из этого дистрибутив. Согласно официальной документации PyGObject, это возможно каким-то образом.

Я уже пытался создать пакет, используя setuptools, но в документации PyGObject об этом процессе ничего не говорится, и я не смог правильно настроить настройку, чтобы он работал. PyGObject имеет много зависимостей и странных импортов, которые я не знаю, как включить.

Я также попробовал Pyinstaller, который утверждает, что у него есть поддержка GTK, и он действительно может упаковать его в исполняемый файл, однако он не работает. Я попробовал эти два варианта:

  1. сделать только один файл (.exe), но в этом случае выдает ошибку, что какой-то файл не найден (libpixbufloader-ani.dll)

  2. создать каталог со всеми необходимыми файлами (на этот раз включены libpixbufloader-ani.dll и другие библиотеки), но при запуске exe происходит другое исключение, на этот раз Struct и 2 другие библиотеки отсутствуют (как ни странно, это папка, которая содержит Struct)

Из-за отсутствующих файлов я попытался добавить в Pyinstaller как можно больше путей, содержащих необходимые библиотеки, но безуспешно.

У кого-нибудь есть опыт упаковки приложений GTK в Python? Определенно есть способ сделать это, но я не очень разбираюсь в упаковке. При необходимости могу предоставить больше информации.

1 Ответ

0 голосов
/ 18 июня 2019

Эта проблема была поднята на странице GitHub PyInstaller , поскольку другие (включая меня) столкнулись с той же проблемой, о которой вы упоминали.

В последний раз, когда я пробовал dev-версию PyInstaller, проблема все еще не была устранена, но мне удалось получить рабочий исполняемый файл с помощью PyInstaller, чтобы найти зависимости, которые нужны моему приложению Python3 / GTK3, а затем я использовал cx_Freeze создать окончательный исполняемый файл.

...