Могут ли setuptools устанавливать зависимости при упаковке в виде .exe?

Я автор чистой библиотеки Python, которую также удобно использовать из командной строки. Для пользователей Windows было бы неплохо просто установить пакет из пакета .exe или .msi.

Однако я не могу заставить установщик установить зависимости пакета (особенно зависимость от самого setuptools, так что запуск программного обеспечения завершается ошибкой импорта в pkg_resources). Я не считаю, что предоставление простого установщика .exe имеет большой смысл, если пользователю затем нужно вручную установить setuptools и другие библиотеки поверх. Я бы предпочел рассказать им, как добавить easy_install в их PATH и пройти этот путь (http://stackoverflow.com/questions/1449494/how-do-i-install-python-packages-on-windows).

Я собирал пакеты .exe в прошлом, но не помню, работало ли это когда-нибудь так, как я предпочитал.


person cburgmer    schedule 21.06.2012    source источник
comment
Почему бы не включить зависимости в exe?   -  person Junuxx    schedule 22.06.2012
comment
Я не понимаю, как я могу сделать это с помощью инструментов настройки Python.   -  person cburgmer    schedule 23.06.2012


Ответы (1)


Распространено распространение пакетов, которые имеют зависимости, особенно те, которые есть у вас, но я понимаю ваше желание максимально упростить установку.

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

Независимо от того, какой метод упаковки вы в конечном итоге выберете, сохраняйте здравомыслие, избегая включения MSI в другие MSI. Это просто не работает из-за требований к транзакционной установке и блокировки базы данных установщика Windows.

person Jirka Hanika    schedule 21.06.2012