Как я могу распространять собственный исполняемый файл для программы на Python?

11

В последнее время вся моя работа была на Python (и Ruby), и я влюблен в эти два языка. Есть много библиотек для разработки игр на Python, но проблема, которую я вижу, что многие из этих структур не покрывают «распределение» аспект создания игры. Я хотел бы написать код своей игры на Python (и любых других дополнительных библиотеках Python, которые мне нужны) и иметь возможность распространять исполняемый файл для основных платформ ПК (Windows, Mac и Linux).

Любые варианты вне там или что лучшие комбинации для этого? (Возможно pyglet + cx_freeze)


источник

Ответы:

13

Некоторые параметры для Python:

  • Мультиплатформенность (Win / Linux / Mac): PyInstaller
  • Мультиплатформенность (Win / Linux / Max): cx-freeze
  • Windows: py2exe
  • Mac: py2app

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

    Изменить : Кстати, вам может быть интересно посмотреть на эту таблицу сравнения . Парень тоже использовал пиглет.

CeeJay
источник
4

py2exe + NSIS работает достаточно хорошо, хотя для определения правильной конфигурации py2exe может потребоваться некоторое вуду (но вам нужно сделать это только один раз). Вы также можете посмотреть на генерацию скриптов на основе точки входа в setuptools и API pkg_resources для работы с файлами данных.

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