| .. highlight:: c |
| |
| .. _building: |
| |
| ***************************** |
| Building C and C++ Extensions |
| ***************************** |
| |
| A C extension for CPython is a shared library (for example, a ``.so`` file on |
| Linux, ``.pyd`` on Windows), which exports an *initialization function*. |
| |
| See :ref:`extension-modules` for details. |
| |
| |
| .. highlight:: c |
| |
| .. _install-index: |
| .. _setuptools-index: |
| |
| Building C and C++ Extensions with setuptools |
| ============================================= |
| |
| |
| Building, packaging and distributing extension modules is best done with |
| third-party tools, and is out of scope of this document. |
| One suitable tool is Setuptools, whose documentation can be found at |
| https://setuptools.pypa.io/en/latest/setuptools.html. |
| |
| The :mod:`distutils` module, which was included in the standard library |
| until Python 3.12, is now maintained as part of Setuptools. |