Настройка системы сборки для приложения Python

Пытаясь разобраться в этой проблеме, я столкнулся со следующей проблемой.

У меня есть скрипт Python, который устанавливается на /usr/lib/. Но мне нужно вставить этот скрипт в систему сборки, чтобы он мог работать с моим пакетом.

Любая помощь будет принята с благодарностью. Хотя я немного работал с Makefiles при написании приложений на C ++, я никогда не создавал Makefile для файлов Python (и даже не знаю, с чего начать).

Как мне настроить систему сборки для моего приложения?

3
задан 12 April 2017 в 10:23

4 ответа

Scons - это система сборки, которая использует Python в качестве языка (я обычно предпочитаю его над make-файлами для любого проекта), я думаю, что она должна быть способна делать то, что вы хотите.

У него очень хорошее Руководство пользователя .

0
ответ дан 12 April 2017 в 10:23

Ну, как я объяснил по другому вопросу, вам не нужна система сборки, и в этом конкретном случае может быть лучше без нее.

Тем не менее, наиболее стандартным является distutils . Просто предоставьте метаданные (то есть имя, описание и т. Д.) И список (python) пакетов, модулей и скриптов (все они необязательны), и все готово.

Наконец, если вы хотите сгенерировать пакет debian из вашего проекта, то вы можете очень легко сделать это, используя python-stdeb (использует dh7, что мне нравится больше) или python-mkdebian (использует [ 113]). Между этими инструментами есть еще много различий, но я позволю вам открыть их самостоятельно. Просто отметьте, что оба требуют использования distutils. (python-mkdebian является частью пакета python-distutils-extra в Ubuntu, я не использовал -extra много, но вы также можете попробовать это, если хотите)

0
ответ дан 12 April 2017 в 10:23

Обязательно ознакомьтесь:

http://pypi.python.org/pypi/modern-package-template/1.0 Для правильной компоновки пакета по умолчанию, включая начальную настройку .py file

http://pypi.python.org/pypi/virtualenv Для блокировки вашей среды разработки от остальной части вашей системы. Выполнение чего-то вроде

python setup.py develop

встроит / настроит вашу команду в вашу virtualenv, чтобы вы могли протестировать ее.

0
ответ дан 12 April 2017 в 10:23

Уманг имеет правильный ответ, хотя, возможно, не так подробно, как вам может показаться новичком.

Для программы на Python вам нужно начать с создания файла setup.py. Основной частью файла будет обращение к distutils.core.setup - это подробно обсуждается в , часть 2 документации distutils .

Все другие системы упаковки для Python (такие как py2exe, setuptools или Distribute) основываются на пакете distutils, обычно путем расширения setup() некоторым образом (с дополнительными параметрами или командами).

Перед преобразованием этого в пакет Ubuntu вы можете протестировать скрипт установки, запустив sudo setup.py install. Это должно установить файлы в их ожидаемые местоположения; если это не так, вам может понадобиться проверить свою конфигурацию. В частности, разделы 2.5 (сценарии) и 2.6 (данные пакета) документации distutils, вероятно, применимы к вашей ситуации.

Как только это будет сделано, вы можете взглянуть на слои на Ubuntu-упаковке согласно Ubuntu Packaging Guide для Python . Инструменты python-stdeb и python-mkdebian, предложенные Umang, упрощают генерацию различных файлов, необходимых для упаковки Ubuntu.

0
ответ дан 12 April 2017 в 10:23

Другие вопросы по тегам:

Похожие вопросы: