Jak mogę dystrybuować natywny plik wykonywalny dla programu Python?


11

Ostatnio cała moja praca była w języku Python (i Ruby) i jestem zakochana w tych dwóch językach. Istnieje wiele bibliotek do tworzenia gier w Pythonie, ale widzę problem polegający na tym, że wiele z tych frameworków nie obejmuje aspektu „dystrybucji” tworzenia gier. Chciałbym zakodować swoją grę w Pythonie (i innych potrzebnych dodatkowych bibliotekach Pythona) i móc rozpowszechniać pliki wykonywalne na głównych platformach PC (Windows, Mac i Linux).

Jakieś opcje lub jakie są najlepsze kombinacje tego? (może pyglet + cx_freeze)

Odpowiedzi:


13

Niektóre opcje dla Pythona:

  • Multiplatform (Win / Linux / Mac): PyInstaller
  • Multiplatform (Win / Linux / Max): cx-freeze
  • Windows: py2exe
  • Mac: py2app

    Zła wiadomość jest taka, że ​​o ile wiem, nie można tworzyć plików binarnych dla platformy z innej platformy. Przyczyną wydają się być zależności od bibliotek specyficznych dla platformy.

    Edycja : Przy okazji, możesz zainteresować się tą tabelą porównawczą . Facet też używał pygletu.


4

py2exe + NSIS działa wystarczająco dobrze, chociaż zwykle może zająć trochę voodoo, aby ustalić właściwą konfigurację py2exe (ale musisz to zrobić tylko raz). Możesz także spojrzeć na generowane przez setuptools skrypty oparte na punktach wejścia i interfejs API pkg_resources do pracy z plikami danych.


Korzystam z tego systemu i uważam, że jest on dość użyteczny, jeśli trochę stromy na krzywej uczenia się.
Paige Watson,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.