Làm cách nào tôi có thể phân phối một tệp thực thi riêng cho chương trình Python?


11

Gần đây tất cả công việc của tôi là về Python (và Ruby), và tôi yêu hai ngôn ngữ đó. Có nhiều thư viện để phát triển trò chơi trên Python nhưng vấn đề tôi thấy là nhiều khung trong số đó không bao gồm khía cạnh "phân phối" của việc tạo trò chơi. Tôi muốn mã hóa trò chơi của mình trên Python (và bất kỳ thư viện bổ sung thuần Python nào khác mà tôi cần) và có thể phân phối một tệp thực thi cho các nền tảng PC chính (Windows, Mac và Linux).

Bất kỳ lựa chọn ngoài kia hoặc sự kết hợp tốt nhất cho điều này là gì? (có thể là pyglet + cx_freeze)

Câu trả lời:


13

Một số tùy chọn cho Python:

  • Đa nền tảng (Win / Linux / Mac): PyInstaller
  • Đa nền tảng (Win / Linux / Max): đóng băng cx
  • Windows: py2exe
  • Mac: py2app

    Tin xấu là, theo như tôi có thể nói, bạn không thể tạo nhị phân cho một nền tảng từ nền tảng khác. Lý do dường như là phụ thuộc vào các thư viện dành riêng cho nền tảng.

    Chỉnh sửa : Nhân tiện, bạn có thể quan tâm đến việc xem bảng so sánh này . Anh chàng cũng đang sử dụng pyglet.


4

py2exe + NSIS hoạt động đủ tốt, mặc dù có thể mất một số voodoo để tìm ra cấu hình py2exe đúng thường (nhưng bạn chỉ phải làm điều đó một lần). Bạn cũng có thể xem xét việc tạo tập lệnh dựa trên điểm nhập của setuptools và API pkg_resource để làm việc với các tệp dữ liệu.


Tôi sử dụng hệ thống này và thấy nó khá hữu ích, nếu hơi dốc vào đường cong học tập.
Paige Watson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.