Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document Python build requirements #108646

Merged
merged 6 commits into from
Aug 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 22 additions & 5 deletions Doc/using/configure.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,42 @@ Configure Python
Build Requirements
==================

Features required to build CPython:
Features and minimum versions required to build CPython:

* A `C11 <https://en.cppreference.com/w/c/11>`_ compiler. `Optional C11
features
<https://en.wikipedia.org/wiki/C11_(C_standard_revision)#Optional_features>`_
are not required.

* On Windows, Microsoft Visual Studio 2017 or later is required.

* Support for `IEEE 754 <https://en.wikipedia.org/wiki/IEEE_754>`_ floating
point numbers and `floating point Not-a-Number (NaN)
<https://en.wikipedia.org/wiki/NaN#Floating_point>`_.

* Support for threads.

* OpenSSL 1.1.1 or newer for the :mod:`ssl` and :mod:`hashlib` modules.
* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.9 is the recommended
vstinner marked this conversation as resolved.
Show resolved Hide resolved
minimum version for the :mod:`ssl` and :mod:`hashlib` extension modules.

* On Windows, Microsoft Visual Studio 2017 or later is required.
* SQLite 3.15.2 for the :mod:`sqlite3` extension module.
vstinner marked this conversation as resolved.
Show resolved Hide resolved

* Tcl/Tk 8.5.12 for the :mod:`tkinter` module.

* Autoconf 2.71 and aclocal 1.16.4 are required to regenerate the
:file:`configure` script.

.. versionchanged:: 3.13:
Autoconf 2.71, aclocal 1.16.4 and SQLite 3.15.2 are now required.

.. versionchanged:: 3.11
C11 compiler, IEEE 754 and NaN support are now required.
On Windows, Visual Studio 2017 or later is required.
Tcl/Tk version 8.5.12 is now required for the :mod:`tkinter` module.

.. versionchanged:: 3.10
OpenSSL 1.1.1 is now required.
Require SQLite 3.7.15.

.. versionchanged:: 3.7
Thread support and OpenSSL 1.0.2 are now required.
Expand All @@ -37,7 +50,11 @@ Features required to build CPython:
inline`` functions.

.. versionchanged:: 3.5
On Windows, Visual Studio 2015 or later is required.
On Windows, Visual Studio 2015 or later is now required.
Tcl/Tk version 8.4 is now required.

.. versionchanged:: 3.1
Tcl/Tk version 8.3.1 is now required.

See also :pep:`7` "Style Guide for C Code" and :pep:`11` "CPython platform
support".
Expand All @@ -48,7 +65,7 @@ support".
Configure Options
=================

List all ``./configure`` script options using::
List all :file:`configure` script options using::

./configure --help

Expand Down
2 changes: 1 addition & 1 deletion Doc/whatsnew/3.13.rst
Original file line number Diff line number Diff line change
Expand Up @@ -815,7 +815,7 @@ Build Changes
=============

* Autoconf 2.71 and aclocal 1.16.4 is now required to regenerate
:file:`!configure`.
the :file:`configure` script.
(Contributed by Christian Heimes in :gh:`89886`.)

* SQLite 3.15.2 or newer is required to build the :mod:`sqlite3` extension module.
Expand Down