Какой инструмент можно запустить в Linux, создать установщик для программы Python и установить его в Windows? - PullRequest
4 голосов
/ 28 декабря 2010

У меня есть программа Python, которая работает в Linux.

Мои клиенты могут захотеть запустить программу Python в Windows.

Предположим, что они не хотят устанавливать Python, PyGTK или Linux.

Существует ли инструмент, предпочтительно бесплатное (с открытым исходным кодом), которое может работать в Linux, взятьмоя программа на Python, и создать установщик, который установит ее на Windows?

(Особенности: Моя программа на Python 2.6.6, с PyGTK, на Ubuntu 10.10, на VirtualBox, на Windows. У меня нетПрава администратора на моей машине с Windows, поэтому я ограничен в том, что я могу установить на стороне Windows.)

Ответы [ 3 ]

1 голос
/ 31 декабря 2010

py2exe предоставит вам win32 exe-файл, несколько файлов pyd и zip-архив.Вы можете сжать всю папку dist и развернуть ее таким образом.Однако, если вам нужен простой пользовательский установщик с графическим интерфейсом, вам придется создать его в отдельном шаге.

Параметры:

  1. создать Zip-архив, извлечь вручную

  2. BAT-файл в стиле DOS для копирования определенных файлов в предварительно определенные местоположения

  3. Создание установщика в стиле MSI с использованием WiX .Это можно сделать, запустив Mono для Windows под Wine .

  4. Укусите пулю, получите доступ к коробке Windows (реальной или виртуальной)) и используйте py2exe вместе с NSIS или Inno Setup .В вики py2exe есть несколько хороших примеров, которые показывают, как объединить скрипт установки py2exe с автоматическим созданием и генерацией скрипта Innosetup.Одна команда в командной строке, python setup.py py2exe и выводит программу установки exe.

Как упоминалось выше, py2exe еще не готов для Python 3.x.

0 голосов
/ 29 декабря 2010

Использовать py2exe ..Exe должен быть сгенерирован из Windows (Wine в порядке), но это все.Вы хорошо разбираетесь в Python 2.7 (пока нет поддержки 3.x).

0 голосов
/ 28 декабря 2010

Вы можете заглянуть в NSIS и посмотреть, сможете ли вы написать скрипт для получения зависимостей.Я не совсем уверен, каковы ваши особенности, но я ничего не знаю о том, что предлагает решение в один клик.

...