# Distribución de módulos de Python (versión heredada)

Autores

  Greg Ward, Anthony Baxter

Email

  distutils-sig@python.org

Ver también

Distribuir módulos de Python

  La documentación de distribución de módulos actualizada

Nota

Todo el paquete `distutils` ha quedado obsoleto y se eliminará en Python 3.12. Esta documentación se conserva solo como referencia y se eliminará con el paquete. Consulte la entrada What’s New para obtener más información.

Nota

Este documento se conserva únicamente hasta que la documentación de `setuptools` en https://setuptools.readthedocs.io/en/latest/setuptools.html cubra de forma independiente toda la información relevante que se incluye actualmente aquí.

Nota

Esta guía solo cubre las herramientas básicas para compilar y distribuir extensiones que se proporcionan como parte de esta versión de Python. Las herramientas de terceros ofrecen alternativas más seguras y más fáciles de usar. Consulte la sección de recomendaciones rápidas en la Guía del usuario de Python Packaging para obtener más información.

Este documento describe las utilidades de distribución de Python («Distutils») desde el punto de vista del desarrollador del módulo, describiendo las capacidades subyacentes sobre las que se basan las `setuptools` para permitir que los desarrolladores de Python hagan que los módulos y extensiones de Python estén disponibles para una audiencia más amplia.

- 1. Una introducción a Distutils
  - 1.1. Conceptos y Terminología
  - 1.2. Un ejemplo simple
  - 1.3. Terminología general de Python
  - 1.4. Terminología específica de Distutils
- 2. Escribir el script de configuración
  - 2.1. Listado de paquetes completos
  - 2.2. Listado de módulos individuales
  - 2.3. Describiendo módulos de extensión
  - 2.4. Relaciones entre distribuciones y paquetes
  - 2.5. Instalar scripts
  - 2.6. Instalar datos del paquete
  - 2.7. Instalar archivos adicionales
  - 2.8. Metadatos adicionales
  - 2.9. Depuración del script de configuración
- 3. Escribiendo el archivo de configuración de instalación (setup)
- 4. Crear una distribución del código fuente
  - 4.1. Especificar los archivos a distribuir
  - 4.2. Opciones relacionadas con el manifesto
- 5. Crear distribuciones compiladas
  - 5.1. Creando paquetes RPM
  - 5.2. Compilación cruzada en Windows
- 6. Ejemplos de Distutils
  - 6.1. Distribución de Python pura (por módulo)
  - 6.2. Distribución de Python pura (por paquete)
  - 6.3. Módulo de extensión única
  - 6.4. Verificando un paquete
  - 6.5. Leyendo los metadatos
- 7. Extendiendo Distutils
  - 7.1. Integrando nuevos comandos
  - 7.2. Añadiendo nuevos tipos de distribución
- 8. Referencia de Instrucciones
  - 8.1. Instalando módulos: la familia de comandos install
  - 8.2. Creando una distribución de origen: el comando sdist
- 9. Referencia de la API
  - 9.1. `distutils.core` — Funcionalidad Core Distutils
  - 9.2. `distutils.ccompiler` — Clase base CCompiler
  - 9.3. `distutils.unixccompiler` — Unix CCompiler
  - 9.4. `distutils.msvccompiler` — Compilador de Microsoft
  - 9.5. `distutils.bcppcompiler` — Compilador Borland
  - 9.6. `distutils.cygwincompiler` — Compilador Cygwin
  - 9.7. `distutils.archive_util` — Utilidades de archivo
  - 9.8. `distutils.dep_util` — Comprobación de dependencias
  - 9.9. `distutils.dir_util` — Operaciones del árbol de directorios
  - 9.10. `distutils.file_util` — Operaciones de un solo archivo
  - 9.11. `distutils.util` — Otras funciones de utilidad varias
  - 9.12. `distutils.dist` — La clase Distribution
  - 9.13. `distutils.extension` — La clase Extension
  - 9.14. `distutils.debug` — modo de depuración Distutils
  - 9.15. `distutils.errors` — excepciones Distutils
  - 9.16. `distutils.fancy_getopt` — Wrapper alrededor del módulo estándar getopt
  - 9.17. `distutils.filelist` — La clase FileList
  - 9.18. `distutils.log` — Simple PEP 282-registro de estilo
  - 9.19. `distutils.spawn` — Genera un subproceso
  - 9.20. `distutils.sysconfig` — Información de configuración del sistema
  - 9.21. `distutils.text_file` — La clase TextFile
  - 9.22. `distutils.version` — Clases de número de versión
  - 9.23. `distutils.cmd` — Clase base abstracta para comandos Distutils
  - 9.24. Creando un nuevo comando Distutils
  - 9.25. `distutils.command` — Comandos individuales de Distutils
  - 9.26. `distutils.command.bdist` — Construye un instalador binario
  - 9.27. `distutils.command.bdist_packager` — Clase base abstracta para empaquetadores
  - 9.28. `distutils.command.bdist_dumb` — Construye un instalador «dump»
  - 9.29. `distutils.command.bdist_msi` — Construye un paquete binario instalador de Microsoft
  - 9.30. `distutils.command.bdist_rpm` — Construye una distribución binaria como RedHat RPM y SRPM
  - 9.31. `distutils.command.sdist` — Construye una distribución de código fuente
  - 9.32. `distutils.command.build` — Construye todos los archivos de un paquete
  - 9.33. `distutils.command.build_clib` — Construye cualquier biblioteca C en un paquete
  - 9.34. `distutils.command.build_ext` — Construye cualquier extensión en un paquete
  - 9.35. `distutils.command.build_py` — Construye los archivos .py/.pyc de un paquete
  - 9.36. `distutils.command.build_scripts` — Construye los scripts de un paquete
  - 9.37. `distutils.command.clean` — Limpia el área de construcción de un paquete
  - 9.38. `distutils.command.config` — Realiza la configuración de un paquete
  - 9.39. `distutils.command.install` — Instala un paquete
  - 9.40. `distutils.command.install_data` — Instala archivos de datos de un paquete
  - 9.41. `distutils.command.install_headers` — Instala archivos de encabezado C/C++ desde un paquete
  - 9.42. `distutils.command.install_lib` — Instala archivos de biblioteca desde un paquete
  - 9.43. `distutils.command.install_scripts` — Instala archivos de script desde un paquete
  - 9.44. `distutils.command.register` — Registra un módulo con el índice de paquetes de Python
  - 9.45. `distutils.command.check` — Verificar los metadatos de un paquete