Pull to refresh

Comments 9

Если интересует развёртывание исключительно под Windows, есть такой инструмент pynsist — обёртка над NSIS, устанавливающая на пользовательскую машину сам Python нужной версии и грамотно раскидывающая ярлыки при установке.
А можно ли на сам код бота посмотреть, из академических соображений.
Да, конечно. Исходники здесь, а сам бот на Телеграме вот, для примера. В принципе, сам по себе бот нерелевантен к статье, но если интересно, пожалуйта. 8)
Кстати, есть ещё интересный модуль (и заодно утилита) zipapp (https://docs.python.org/3/library/zipapp.html), позволяющая создавать исполняемые .pyz-архивы, поддерживаемые Python 2.7 — 3.5+. Правда, сама утилита/модуль есть только в 3.5 и выше, но созданные архивы отлично запускаются на младших версиях интерпретатора.
Что вы имеете в виду под кроссплатформенностью cx_Freeze? Собранные с ее помощью инсталяторы, например, в Linux, вряд ли запустятся на Windows.
Я имел в виду, что сам модуль cx_Freeze — кросс-платформенный, то есть он сам работает под разными системами, и с его помощью можно собрать исполняемый файл под Windows и Linux. Естественно, собирать программу нужно, находясь на целевой системе.

Собранные с ее помощью инсталяторы

Кстати, он собирает уже готовые к запуску исполняемые файлы, а не инсталяторы.
Кстати, есть библиотека, которая собирает кросплатформенные исполняемые файлы программ Python, вне зависимости, в какой среде была произведена сборка! И это не cx_Freeze!
Интересно. Дайте ссылочку, пожалуйста.
Кстати, он собирает уже готовые к запуску исполняемые файлы, а не инсталяторы.


По крайней мере под Win собирает отличные инсталляторы (именно, которые инсталлируют ваш питоновский собранный exe)

msi_opts = {
    'upgrade_code': '{98A12636-475E-42A5-8EDD-E072890046EA}',
    'add_to_path': False,
    'initial_target_dir': r'[ProgramFilesFolder]\{}\{}'.format(company_name, product_name),
}
setup(
    version=version.get_new_version(),
    description='My App',
    author='Author',
    name='My Application',
    options={
        'build_exe': exe_opts,
        'bdist_msi': msi_opts,
    },
    executables=[exe]
)
Sign up to leave a comment.

Articles