Причины использования distutils при упаковке проекта C / Python - PullRequest
0 голосов
/ 06 октября 2009

У меня есть проект с открытым исходным кодом, содержащий как Python, так и C-код. Мне интересно, есть ли какая-либо польза для distutils для меня, потому что я планирую сделать пакет ubuntu / debian. Код C - это не то, что я мог или хотел бы использовать в качестве расширения Python. Программы на C и Python взаимодействуют с TCP / IP через localhost.

Итак, суть в том, что, пока я изучаю упаковку, использование определенных файлов distutils только делает меня более запутанным, поскольку я не могу использовать свой C-код в качестве расширений Python? Или мне следует разделить функциональность C и Python на отдельные проекты, чтобы лучше понимать концепции упаковки?

Ответы [ 2 ]

1 голос
/ 06 октября 2009

Поскольку он использует унифицированную команду python setup.py install? distutils или setuptools? В любом случае, просто используйте один из них.

Для разработки это также действительно полезно, потому что вам не нужно заботиться о том, где найти такую-то зависимость. Пока это стандартная Python / базовая системная библиотека, setup.py должен найти ее для вас. С setup.py вам больше не нужны ./configure вещи или ужасные автоинструменты для создания огромных Makefile. Это просто работает (тм)

1 голос
/ 06 октября 2009

distutils можно использовать для установки программ конечного пользователя, но это наиболее полезно при использовании его для библиотек Python, поскольку он может создавать исходные пакеты, а также устанавливать их в нужном месте. Для этого я бы сказал, что это более или менее необходимо.

Но для программы Python для конечного пользователя вы также можете использовать make или все, что вам нравится и к которому вы привыкли, так как вам не нужно устанавливать какой-либо код в каталоге пакетов сайта Python и вам не нужно помещать Ваш код на PyPI, и он не должен быть доступен из другого Python-кода.

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

...