index.md
1> **Источник:** https://python-all.ru/3.8/distutils/index.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Распространение модулей Python (устаревшая версия)89**Авторы**1011Грег Уорд, Энтони Бакстер1213**Электронная почта**1415[distutils-sig@python.org](https://python-all.ru/3.8/distutils/index.html)1617> **См. также**18>19> **[Распространение модулей Python](https://python-all.ru/3.8/distributing/index.html#distributing-index)**20>21> Актуальная документация по распространению модулей2223> **Примечание**24>25> Этот документ сохраняется только до тех пор, пока `setuptools` документация по адресу [https://setuptools.readthedocs.io/en/latest/setuptools.html](https://python-all.ru/3.8/distutils/index.html) не станет самостоятельно охватывать всю актуальную информацию, приведённую здесь.2627> **Примечание**28>29> Это руководство охватывает только основные инструменты для сборки и распространения расширений, входящие в состав этой версии Python. Сторонние инструменты предлагают более простые и безопасные альтернативы. Для получения дополнительной информации обратитесь к [разделу с краткими рекомендациями](https://python-all.ru/3.8/distutils/index.html) в руководстве пользователя по упаковке Python.3031В этом документе описываются утилиты распространения Python (Distutils) с точки зрения разработчика модулей, а также базовые возможности, на которых строится `setuptools`, позволяющие разработчикам Python делать свои модули и расширения доступными для более широкой аудитории.3233- [1. Введение в Distutils](https://python-all.ru/3.8/distutils/introduction.html)3435 - [1.1. Понятия и терминология](https://python-all.ru/3.8/distutils/introduction.html#concepts-terminology)36 - [1.2. Простой пример](https://python-all.ru/3.8/distutils/introduction.html#a-simple-example)37 - [1.3. Общая терминология Python](https://python-all.ru/3.8/distutils/introduction.html#general-python-terminology)38 - [1.4. Терминология Distutils](https://python-all.ru/3.8/distutils/introduction.html#distutils-specific-terminology)39- [2. Написание скрипта установки](https://python-all.ru/3.8/distutils/setupscript.html)4041 - [2.1. Перечисление целых пакетов](https://python-all.ru/3.8/distutils/setupscript.html#listing-whole-packages)42 - [2.2. Перечисление отдельных модулей](https://python-all.ru/3.8/distutils/setupscript.html#listing-individual-modules)43 - [2.3. Описание модулей расширения](https://python-all.ru/3.8/distutils/setupscript.html#describing-extension-modules)44 - [2.4. Связи между дистрибутивами и пакетами](https://python-all.ru/3.8/distutils/setupscript.html#relationships-between-distributions-and-packages)45 - [2.5. Установка скриптов](https://python-all.ru/3.8/distutils/setupscript.html#installing-scripts)46 - [2.6. Установка данных пакета](https://python-all.ru/3.8/distutils/setupscript.html#installing-package-data)47 - [2.7. Установка дополнительных файлов](https://python-all.ru/3.8/distutils/setupscript.html#installing-additional-files)48 - [2.8. Дополнительные метаданные](https://python-all.ru/3.8/distutils/setupscript.html#additional-meta-data)49 - [2.9. Отладка скрипта установки](https://python-all.ru/3.8/distutils/setupscript.html#debugging-the-setup-script)50- [3. Написание файла конфигурации установки](https://python-all.ru/3.8/distutils/configfile.html)51- [4. Создание исходного дистрибутива](https://python-all.ru/3.8/distutils/sourcedist.html)5253 - [4.1. Указание файлов для распространения](https://python-all.ru/3.8/distutils/sourcedist.html#specifying-the-files-to-distribute)54 - [4.2. Опции, связанные с манифестом](https://python-all.ru/3.8/distutils/sourcedist.html#manifest-related-options)55- [5. Создание готовых дистрибутивов](https://python-all.ru/3.8/distutils/builtdist.html)5657 - [5.1. Создание RPM-пакетов](https://python-all.ru/3.8/distutils/builtdist.html#creating-rpm-packages)58 - [5.2. Создание установщиков для Windows](https://python-all.ru/3.8/distutils/builtdist.html#creating-windows-installers)59 - [5.3. Кросс-компиляция на Windows](https://python-all.ru/3.8/distutils/builtdist.html#cross-compiling-on-windows)60 - [5.4. Контроль учётных записей (UAC) в Vista](https://python-all.ru/3.8/distutils/builtdist.html#vista-user-access-control-uac)61- [6. Примеры Distutils](https://python-all.ru/3.8/distutils/examples.html)6263 - [6.1. Дистрибутив на чистом Python (по модулям)](https://python-all.ru/3.8/distutils/examples.html#pure-python-distribution-by-module)64 - [6.2. Дистрибутив на чистом Python (по пакетам)](https://python-all.ru/3.8/distutils/examples.html#pure-python-distribution-by-package)65 - [6.3. Один модуль расширения](https://python-all.ru/3.8/distutils/examples.html#single-extension-module)66 - [6.4. Проверка пакета](https://python-all.ru/3.8/distutils/examples.html#checking-a-package)67 - [6.5. Чтение метаданных](https://python-all.ru/3.8/distutils/examples.html#reading-the-metadata)68- [7. Расширение Distutils](https://python-all.ru/3.8/distutils/extending.html)6970 - [7.1. Интеграция новых команд](https://python-all.ru/3.8/distutils/extending.html#integrating-new-commands)71 - [7.2. Добавление новых типов дистрибутивов](https://python-all.ru/3.8/distutils/extending.html#adding-new-distribution-types)72- [8. Справочник команд](https://python-all.ru/3.8/distutils/commandref.html)7374 - [8.1. Установка модулей: семейство команд **install**](https://python-all.ru/3.8/distutils/commandref.html#installing-modules-the-install-command-family)75 - [8.2. Создание исходного дистрибутива: команда **sdist**](https://python-all.ru/3.8/distutils/commandref.html#creating-a-source-distribution-the-sdist-command)76- [9. Справочник по API](https://python-all.ru/3.8/distutils/apiref.html)7778 - [9.1. `distutils.core` – Базовая функциональность Distutils](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.core)79 - [9.2. `distutils.ccompiler` – Базовый класс CCompiler](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.ccompiler)80 - [9.3. `distutils.unixccompiler` – Компилятор C для Unix](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.unixccompiler)81 - [9.4. `distutils.msvccompiler` – Компилятор Microsoft](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.msvccompiler)82 - [9.5. `distutils.bcppcompiler` – Компилятор Borland](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.bcppcompiler)83 - [9.6. `distutils.cygwincompiler` – Компилятор Cygwin](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.cygwinccompiler)84 - [9.7. `distutils.archive_util` – Утилиты архивации](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.archive_util)85 - [9.8. `distutils.dep_util` – Проверка зависимостей](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.dep_util)86 - [9.9. `distutils.dir_util` – Операции с деревом каталогов](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.dir_util)87 - [9.10. `distutils.file_util` – Операции с отдельными файлами](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.file_util)88 - [9.11. `distutils.util` – Прочие вспомогательные функции](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.util)89 - [9.12. `distutils.dist` – Класс Distribution](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.dist)90 - [9.13. `distutils.extension` – Класс Extension](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.extension)91 - [9.14. `distutils.debug` – Режим отладки Distutils](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.debug)92 - [9.15. `distutils.errors` – Исключения Distutils](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.errors)93 - [9.16. `distutils.fancy_getopt` – Обёртка вокруг стандартного модуля getopt](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.fancy_getopt)94 - [9.17. `distutils.filelist` – Класс FileList](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.filelist)95 - [9.18. `distutils.log` – Простое логирование в стиле **PEP 282**](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.log)96 - [9.19. `distutils.spawn` – Запуск подпроцесса](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.spawn)97 - [9.20. `distutils.sysconfig` – Информация о системной конфигурации](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.sysconfig)98 - [9.21. `distutils.text_file` – Класс TextFile](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.text_file)99 - [9.22. `distutils.version` – Классы номеров версий](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.version)100 - [9.23. `distutils.cmd` – Абстрактный базовый класс для команд Distutils](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.cmd)101 - [9.24. Создание новой команды Distutils](https://python-all.ru/3.8/distutils/apiref.html#creating-a-new-distutils-command)102 - [9.25. `distutils.command` – Отдельные команды Distutils](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command)103 - [9.26. `distutils.command.bdist` – Сборка двоичного установщика](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist)104 - [9.27. `distutils.command.bdist_packager` – Абстрактный базовый класс для упаковщиков](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist_packager)105 - [9.28. `distutils.command.bdist_dumb` – Сборка «dumb» установщика](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist_dumb)106 - [9.29. `distutils.command.bdist_msi` – Сборка двоичного пакета Microsoft Installer](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist_msi)107 - [9.30. `distutils.command.bdist_rpm` – Сборка двоичного дистрибутива в виде RPM и SRPM Red Hat](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist_rpm)108 - [9.31. `distutils.command.bdist_wininst` – Сборка установщика Windows](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.bdist_wininst)109 - [9.32. `distutils.command.sdist` – Сборка дистрибутива исходного кода](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.sdist)110 - [9.33. `distutils.command.build` – Сборка всех файлов пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.build)111 - [9.34. `distutils.command.build_clib` – Сборка любых C-библиотек в пакете](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.build_clib)112 - [9.35. `distutils.command.build_ext` – Сборка любых расширений в пакете](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.build_ext)113 - [9.36. `distutils.command.build_py` – Сборка .py/.pyc-файлов пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.build_py)114 - [9.37. `distutils.command.build_scripts` – Собрать скрипты пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.build_scripts)115 - [9.38. `distutils.command.clean` – Очистить область сборки пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.clean)116 - [9.39. `distutils.command.config` – Выполнить настройку пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.config)117 - [9.40. `distutils.command.install` – Установить пакет](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.install)118 - [9.41. `distutils.command.install_data` – Установить файлы данных из пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.install_data)119 - [9.42. `distutils.command.install_headers` – Установить заголовочные файлы C/C++ из пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.install_headers)120 - [9.43. `distutils.command.install_lib` – Установить файлы библиотек из пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.install_lib)121 - [9.44. `distutils.command.install_scripts` – Установить файлы скриптов из пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.install_scripts)122 - [9.45. `distutils.command.register` – Зарегистрировать модуль в Python Package Index](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.register)123 - [9.46. `distutils.command.check` – Проверить метаданные пакета](https://python-all.ru/3.8/distutils/apiref.html#module-distutils.command.check)124