Distributing Python Modules¶
Authors: | Greg Ward, Anthony Baxter |
---|---|
Email: | distutils-sig@python.org |
Release: | 3.0 |
Date: | August 10, 2025 |
This document describes the Python Distribution Utilities (“Distutils”) from the module developer’s point of view, describing how to use the Distutils to make Python modules and extensions easily available to a wider audience with very little overhead for build/release/install mechanics.
- An Introduction to Distutils
- Writing the Setup Script
- Writing the Setup Configuration File
- Creating a Source Distribution
- Creating Built Distributions
- Registering with the Package Index
- Uploading Packages to the Package Index
- Examples
- Extending Distutils
- Command Reference
- API Reference
distutils.core
— Core Distutils functionalitydistutils.ccompiler
— CCompiler base classdistutils.unixccompiler
— Unix C Compilerdistutils.msvccompiler
— Microsoft Compilerdistutils.bcppcompiler
— Borland Compilerdistutils.cygwincompiler
— Cygwin Compilerdistutils.emxccompiler
— OS/2 EMX Compilerdistutils.mwerkscompiler
— Metrowerks CodeWarrior supportdistutils.archive_util
— Archiving utilitiesdistutils.dep_util
— Dependency checkingdistutils.dir_util
— Directory tree operationsdistutils.file_util
— Single file operationsdistutils.util
— Miscellaneous other utility functionsdistutils.dist
— The Distribution classdistutils.extension
— The Extension classdistutils.debug
— Distutils debug modedistutils.errors
— Distutils exceptionsdistutils.fancy_getopt
— Wrapper around the standard getopt moduledistutils.filelist
— The FileList classdistutils.log
— Simple PEP 282-style loggingdistutils.spawn
— Spawn a sub-processdistutils.sysconfig
— System configuration informationdistutils.text_file
— The TextFile classdistutils.version
— Version number classesdistutils.cmd
— Abstract base class for Distutils commandsdistutils.command
— Individual Distutils commandsdistutils.command.bdist
— Build a binary installerdistutils.command.bdist_packager
— Abstract base class for packagersdistutils.command.bdist_dumb
— Build a “dumb” installerdistutils.command.bdist_msi
— Build a Microsoft Installer binary packagedistutils.command.bdist_rpm
— Build a binary distribution as a Redhat RPM and SRPMdistutils.command.bdist_wininst
— Build a Windows installerdistutils.command.sdist
— Build a source distributiondistutils.command.build
— Build all files of a packagedistutils.command.build_clib
— Build any C libraries in a packagedistutils.command.build_ext
— Build any extensions in a packagedistutils.command.build_py
— Build the .py/.pyc files of a packagedistutils.command.build_scripts
— Build the scripts of a packagedistutils.command.clean
— Clean a package build areadistutils.command.config
— Perform package configurationdistutils.command.install
— Install a packagedistutils.command.install_data
— Install data files from a packagedistutils.command.install_headers
— Install C/C++ header files from a packagedistutils.command.install_lib
— Install library files from a packagedistutils.command.install_scripts
— Install script files from a packagedistutils.command.register
— Register a module with the Python Package Index- Creating a new Distutils command