Распространение пакетов

py2app

Чтобы использовать каркас py2app, вы должны сначала установить его. Сделайте это, открыв терминал и введя следующую команду:

 sudo easy_install -U py2app

 

Вы также можете pip установить пакеты , как:

 pip install py2app 

 

Затем создайте установочный файл для вашего скрипта Python:

 py2applet --make-setup MyApplication.py


 

Отредактируйте настройки установочного файла по своему вкусу, это по умолчанию:

 """
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup

APP = ['test.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True}

setup(
    app=APP,
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

 

Чтобы добавить файл значков (этот файл должен иметь расширение .icns) или включить изображения в приложение в качестве ссылки, измените параметры, как показано ниже:

 DATA_FILES = ['myInsertedImage.jpg']
OPTIONS = {'argv_emulation': True, 'iconfile': 'myCoolIcon.icns'}

 

Наконец введите это в терминал:

 python setup.py py2app

 

Сценарий должен запуститься, и вы найдете готовое приложение в папке dist.

Используйте следующие параметры для дополнительной настройки:

 optimize (-O)         optimization level: -O1 for "python -O", -O2 for
                      "python -OO", and -O0 to disable [default: -O0]

includes (-i)         comma-separated list of modules to include

packages (-p)         comma-separated list of packages to include

extension             Bundle extension [default:.app for app, .plugin for
                      plugin]

extra-scripts         comma-separated list of additional scripts to include
                      in an application or plugin. 

cx_Freeze

Установить cx_Freeze из здесь

Разархивируйте папку и выполните следующие команды из этого каталога:

 python setup.py build
sudo python setup.py install

 

Создайте новый каталог для вашего питона сценария и создать «setup.py» файл в том же каталоге , со следующим содержанием:

 application_title = "My Application" # Use your own application name
main_python_file = "my_script.py" # Your python script

import sys

from cx_Freeze import setup, Executable

base = None
if sys.platform == "win32":
    base = "Win32GUI"

includes = ["atexit","re"]

setup(
        name = application_title,
        version = "0.1",
        description = "Your Description",
        options = {"build_exe" : {"includes" : includes }},
        executables = [Executable(main_python_file, base = base)])

 

Теперь запустите ваш setup.py из терминала:

 python setup.py bdist_mac