mirror of https://github.com/python/cpython
bpo-43774: Add more links to configure options (GH-25363)
This commit is contained in:
parent
20ac34772a
commit
85918e4ab6
|
@ -638,7 +638,7 @@ PyConfig
|
||||||
Set to ``1`` by the :envvar:`PYTHONDUMPREFS` environment variable.
|
Set to ``1`` by the :envvar:`PYTHONDUMPREFS` environment variable.
|
||||||
|
|
||||||
Need a special build of Python with the ``Py_TRACE_REFS`` macro defined:
|
Need a special build of Python with the ``Py_TRACE_REFS`` macro defined:
|
||||||
see :option:`configure --with-trace-refs <--with-trace-refs>`.
|
see the :option:`configure --with-trace-refs option <--with-trace-refs>`.
|
||||||
|
|
||||||
Default: ``0``.
|
Default: ``0``.
|
||||||
|
|
||||||
|
@ -820,7 +820,7 @@ PyConfig
|
||||||
Set to ``1`` by the :envvar:`PYTHONMALLOCSTATS` environment variable.
|
Set to ``1`` by the :envvar:`PYTHONMALLOCSTATS` environment variable.
|
||||||
|
|
||||||
The option is ignored if Python is :option:`configured using
|
The option is ignored if Python is :option:`configured using
|
||||||
--without-pymalloc <--without-pymalloc>`.
|
the --without-pymalloc option <--without-pymalloc>`.
|
||||||
|
|
||||||
Default: ``0``.
|
Default: ``0``.
|
||||||
|
|
||||||
|
@ -831,8 +831,8 @@ PyConfig
|
||||||
Set by the :envvar:`PYTHONPLATLIBDIR` environment variable.
|
Set by the :envvar:`PYTHONPLATLIBDIR` environment variable.
|
||||||
|
|
||||||
Default: value of the ``PLATLIBDIR`` macro which is set by the
|
Default: value of the ``PLATLIBDIR`` macro which is set by the
|
||||||
:option:`configure --with-platlibdir option <--with-platlibdir>` (default:
|
:option:`configure --with-platlibdir option <--with-platlibdir>`
|
||||||
``"lib"``).
|
(default: ``"lib"``).
|
||||||
|
|
||||||
Part of the :ref:`Python Path Configuration <init-path-config>` input.
|
Part of the :ref:`Python Path Configuration <init-path-config>` input.
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,8 @@ or::
|
||||||
$ sudo apt-get install systemtap-sdt-dev
|
$ sudo apt-get install systemtap-sdt-dev
|
||||||
|
|
||||||
|
|
||||||
CPython must then be configured ``--with-dtrace``:
|
CPython must then be :option:`configured with the --with-dtrace option
|
||||||
|
<--with-dtrace>`:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
@ -77,7 +78,8 @@ the built binary by seeing if it contains a ".note.stapsdt" section.
|
||||||
$ readelf -S ./python | grep .note.stapsdt
|
$ readelf -S ./python | grep .note.stapsdt
|
||||||
[30] .note.stapsdt NOTE 0000000000000000 00308d78
|
[30] .note.stapsdt NOTE 0000000000000000 00308d78
|
||||||
|
|
||||||
If you've built Python as a shared library (with --enable-shared), you
|
If you've built Python as a shared library
|
||||||
|
(with the :option:`--enable-shared` configure option), you
|
||||||
need to look instead within the shared library. For example::
|
need to look instead within the shared library. For example::
|
||||||
|
|
||||||
$ readelf -S libpython3.3dm.so.1.0 | grep .note.stapsdt
|
$ readelf -S libpython3.3dm.so.1.0 | grep .note.stapsdt
|
||||||
|
@ -252,7 +254,7 @@ where the columns are:
|
||||||
|
|
||||||
and the remainder indicates the call/return hierarchy as the script executes.
|
and the remainder indicates the call/return hierarchy as the script executes.
|
||||||
|
|
||||||
For a `--enable-shared` build of CPython, the markers are contained within the
|
For a :option:`--enable-shared` build of CPython, the markers are contained within the
|
||||||
libpython shared library, and the probe's dotted path needs to reflect this. For
|
libpython shared library, and the probe's dotted path needs to reflect this. For
|
||||||
example, this line from the above example:
|
example, this line from the above example:
|
||||||
|
|
||||||
|
|
|
@ -1484,8 +1484,8 @@ are also included in the pure Python version for compatibility.
|
||||||
|
|
||||||
.. data:: HAVE_CONTEXTVAR
|
.. data:: HAVE_CONTEXTVAR
|
||||||
|
|
||||||
The default value is ``True``. If Python is :option:`configured with
|
The default value is ``True``. If Python is :option:`configured using
|
||||||
--without-decimal-contextvar <--without-decimal-contextvar>`,
|
the --without-decimal-contextvar option <--without-decimal-contextvar>`,
|
||||||
the C version uses a thread-local rather than a coroutine-local context and the value
|
the C version uses a thread-local rather than a coroutine-local context and the value
|
||||||
is ``False``. This is slightly faster in some nested context scenarios.
|
is ``False``. This is slightly faster in some nested context scenarios.
|
||||||
|
|
||||||
|
|
|
@ -1090,5 +1090,5 @@ committed:
|
||||||
.. [#f1] The sqlite3 module is not built with loadable extension support by
|
.. [#f1] The sqlite3 module is not built with loadable extension support by
|
||||||
default, because some platforms (notably Mac OS X) have SQLite
|
default, because some platforms (notably Mac OS X) have SQLite
|
||||||
libraries which are compiled without this feature. To get loadable
|
libraries which are compiled without this feature. To get loadable
|
||||||
extension support, you must pass ``--enable-loadable-sqlite-extensions`` to
|
extension support, you must pass the
|
||||||
configure.
|
:option:`--enable-loadable-sqlite-extensions` option to configure.
|
||||||
|
|
|
@ -250,8 +250,9 @@ always available.
|
||||||
Print low-level information to stderr about the state of CPython's memory
|
Print low-level information to stderr about the state of CPython's memory
|
||||||
allocator.
|
allocator.
|
||||||
|
|
||||||
If Python is :option:`configured --with-pydebug <--with-pydebug>`, it also
|
If Python is `built in debug mode <debug-build>` (:option:`configure
|
||||||
performs some expensive internal consistency checks.
|
--with-pydebug option <--with-pydebug>`), it also performs some expensive
|
||||||
|
internal consistency checks.
|
||||||
|
|
||||||
.. versionadded:: 3.3
|
.. versionadded:: 3.3
|
||||||
|
|
||||||
|
|
|
@ -124,8 +124,9 @@ time zone database (except on Windows, where there are no "well-known"
|
||||||
locations for time zone data). On POSIX systems, downstream distributors and
|
locations for time zone data). On POSIX systems, downstream distributors and
|
||||||
those building Python from source who know where their system
|
those building Python from source who know where their system
|
||||||
time zone data is deployed may change the default time zone path by specifying
|
time zone data is deployed may change the default time zone path by specifying
|
||||||
the compile-time option ``TZPATH`` (or, more likely, the ``configure`` flag
|
the compile-time option ``TZPATH`` (or, more likely, the :option:`configure
|
||||||
``--with-tzpath``), which should be a string delimited by :data:`os.pathsep`.
|
flag --with-tzpath <--with-tzpath>`), which should be a string delimited by
|
||||||
|
:data:`os.pathsep`.
|
||||||
|
|
||||||
On all platforms, the configured value is available as the ``TZPATH`` key in
|
On all platforms, the configured value is available as the ``TZPATH`` key in
|
||||||
:func:`sysconfig.get_config_var`.
|
:func:`sysconfig.get_config_var`.
|
||||||
|
|
|
@ -19,7 +19,10 @@ General Options
|
||||||
.. cmdoption:: --enable-loadable-sqlite-extensions
|
.. cmdoption:: --enable-loadable-sqlite-extensions
|
||||||
|
|
||||||
Support loadable extensions in the :mod:`_sqlite` extension module (default
|
Support loadable extensions in the :mod:`_sqlite` extension module (default
|
||||||
is no), see the :mod:`sqlite3` module.
|
is no).
|
||||||
|
|
||||||
|
See the :meth:`sqlite3.Connection.enable_load_extension` method of the
|
||||||
|
:mod:`sqlite3` module.
|
||||||
|
|
||||||
.. versionadded:: 3.6
|
.. versionadded:: 3.6
|
||||||
|
|
||||||
|
@ -54,8 +57,9 @@ General Options
|
||||||
|
|
||||||
.. cmdoption:: --with-tzpath=<list of absolute paths separated by pathsep>
|
.. cmdoption:: --with-tzpath=<list of absolute paths separated by pathsep>
|
||||||
|
|
||||||
Select the default time zone search path for :data:`zoneinfo.TZPATH`,
|
Select the default time zone search path for :data:`zoneinfo.TZPATH`.
|
||||||
see the :mod:`zoneinfo` module.
|
See the :ref:`Compile-time configuration
|
||||||
|
<zoneinfo_data_compile_time_config>` of the :mod:`zoneinfo` module.
|
||||||
|
|
||||||
Default: ``/usr/share/zoneinfo:/usr/lib/zoneinfo:/usr/share/lib/zoneinfo:/etc/zoneinfo``.
|
Default: ``/usr/share/zoneinfo:/usr/lib/zoneinfo:/usr/share/lib/zoneinfo:/etc/zoneinfo``.
|
||||||
|
|
||||||
|
@ -287,6 +291,9 @@ Debug options
|
||||||
|
|
||||||
Enable DTrace support (default is no).
|
Enable DTrace support (default is no).
|
||||||
|
|
||||||
|
See :ref:`Instrumenting CPython with DTrace and SystemTap
|
||||||
|
<instrumentation>`.
|
||||||
|
|
||||||
.. versionadded:: 3.6
|
.. versionadded:: 3.6
|
||||||
|
|
||||||
.. cmdoption:: --with-address-sanitizer
|
.. cmdoption:: --with-address-sanitizer
|
||||||
|
|
|
@ -168,6 +168,7 @@ Custom OpenSSL
|
||||||
$ popd
|
$ popd
|
||||||
|
|
||||||
3. Build Python with custom OpenSSL
|
3. Build Python with custom OpenSSL
|
||||||
|
(see the configure `--with-openssl` and `--with-openssl-rpath` options)
|
||||||
|
|
||||||
.. code-block:: shell-session
|
.. code-block:: shell-session
|
||||||
|
|
||||||
|
|
|
@ -986,9 +986,9 @@ Optimizations
|
||||||
van Rossum in :issue:`42927`, based on ideas implemented originally in PyPy
|
van Rossum in :issue:`42927`, based on ideas implemented originally in PyPy
|
||||||
and MicroPython.)
|
and MicroPython.)
|
||||||
|
|
||||||
* When building Python with ``--enable-optimizations`` now
|
* When building Python with :option:`--enable-optimizations` now
|
||||||
``-fno-semantic-interposition`` is added to both the compile and link line.
|
``-fno-semantic-interposition`` is added to both the compile and link line.
|
||||||
This speeds builds of the Python interpreter created with ``--enable-shared``
|
This speeds builds of the Python interpreter created with :option:`--enable-shared`
|
||||||
with ``gcc`` by up to 30%. See `this article
|
with ``gcc`` by up to 30%. See `this article
|
||||||
<https://developers.redhat.com/blog/2020/06/25/red-hat-enterprise-linux-8-2-brings-faster-python-3-8-run-speeds/>`_
|
<https://developers.redhat.com/blog/2020/06/25/red-hat-enterprise-linux-8-2-brings-faster-python-3-8-run-speeds/>`_
|
||||||
for more details. (Contributed by Victor Stinner and Pablo Galindo in
|
for more details. (Contributed by Victor Stinner and Pablo Galindo in
|
||||||
|
@ -1300,11 +1300,12 @@ Build Changes
|
||||||
* The :mod:`atexit` module must now always be built as a built-in module.
|
* The :mod:`atexit` module must now always be built as a built-in module.
|
||||||
(Contributed by Victor Stinner in :issue:`42639`.)
|
(Contributed by Victor Stinner in :issue:`42639`.)
|
||||||
|
|
||||||
* Added ``--disable-test-modules`` option to the ``configure`` script:
|
* Added :option:`--disable-test-modules` option to the ``configure`` script:
|
||||||
don't build nor install test modules.
|
don't build nor install test modules.
|
||||||
(Contributed by Xavier de Gaye, Thomas Petazzoni and Peixing Xin in :issue:`27640`.)
|
(Contributed by Xavier de Gaye, Thomas Petazzoni and Peixing Xin in :issue:`27640`.)
|
||||||
|
|
||||||
* Add ``--with-wheel-pkg-dir=PATH`` option to the ``./configure`` script. If
|
* Add :option:`--with-wheel-pkg-dir=PATH option <--with-wheel-pkg-dir>`
|
||||||
|
to the ``./configure`` script. If
|
||||||
specified, the :mod:`ensurepip` module looks for ``setuptools`` and ``pip``
|
specified, the :mod:`ensurepip` module looks for ``setuptools`` and ``pip``
|
||||||
wheel packages in this directory: if both are present, these wheel packages
|
wheel packages in this directory: if both are present, these wheel packages
|
||||||
are used instead of ensurepip bundled wheel packages.
|
are used instead of ensurepip bundled wheel packages.
|
||||||
|
@ -1316,19 +1317,19 @@ Build Changes
|
||||||
|
|
||||||
(Contributed by Victor Stinner in :issue:`42856`.)
|
(Contributed by Victor Stinner in :issue:`42856`.)
|
||||||
|
|
||||||
* Add a new configure ``--without-static-libpython`` option to not build the
|
* Add a new :option:`configure --without-static-libpython option
|
||||||
``libpythonMAJOR.MINOR.a`` static library and not install the ``python.o``
|
<--without-static-libpython>` to not build the ``libpythonMAJOR.MINOR.a``
|
||||||
object file.
|
static library and not install the ``python.o`` object file.
|
||||||
|
|
||||||
(Contributed by Victor Stinner in :issue:`43103`.)
|
(Contributed by Victor Stinner in :issue:`43103`.)
|
||||||
|
|
||||||
* The ``configure`` script now uses the ``pkg-config`` utility, if available,
|
* The ``configure`` script now uses the ``pkg-config`` utility, if available,
|
||||||
to detect the location of Tcl/Tk headers and libraries. As before, those
|
to detect the location of Tcl/Tk headers and libraries. As before, those
|
||||||
locations can be explicitly specified with the ``--with-tcltk-includes``
|
locations can be explicitly specified with the :option:`--with-tcltk-includes`
|
||||||
and ``--with-tcltk-libs`` configuration options.
|
and :option:`--with-tcltk-libs` configuration options.
|
||||||
(Contributed by Manolis Stamatogiannakis in :issue:`42603`.)
|
(Contributed by Manolis Stamatogiannakis in :issue:`42603`.)
|
||||||
|
|
||||||
* Add ``--with-openssl-rpath`` option to ``configure`` script. The option
|
* Add :option:`--with-openssl-rpath` option to ``configure`` script. The option
|
||||||
simplifies building Python with a custom OpenSSL installation, e.g.
|
simplifies building Python with a custom OpenSSL installation, e.g.
|
||||||
``./configure --with-openssl=/path/to/openssl --with-openssl-rpath=auto``.
|
``./configure --with-openssl=/path/to/openssl --with-openssl-rpath=auto``.
|
||||||
(Contributed by Christian Heimes in :issue:`43466`.)
|
(Contributed by Christian Heimes in :issue:`43466`.)
|
||||||
|
@ -1405,8 +1406,8 @@ New Features
|
||||||
in debug mode because the :c:type:`PyObject` structure is the same in release
|
in debug mode because the :c:type:`PyObject` structure is the same in release
|
||||||
and debug mode since Python 3.8 (see :issue:`36465`).
|
and debug mode since Python 3.8 (see :issue:`36465`).
|
||||||
|
|
||||||
The limited C API is still not supported in the ``--with-trace-refs`` special
|
The limited C API is still not supported in the :option:`--with-trace-refs`
|
||||||
build (``Py_TRACE_REFS`` macro).
|
special build (``Py_TRACE_REFS`` macro).
|
||||||
(Contributed by Victor Stinner in :issue:`43688`.)
|
(Contributed by Victor Stinner in :issue:`43688`.)
|
||||||
|
|
||||||
* Add the :c:func:`Py_Is(x, y) <Py_Is>` function to test if the *x* object is
|
* Add the :c:func:`Py_Is(x, y) <Py_Is>` function to test if the *x* object is
|
||||||
|
|
|
@ -1211,9 +1211,9 @@ Build Changes
|
||||||
non-system Tcl and Tk frameworks if they are installed in
|
non-system Tcl and Tk frameworks if they are installed in
|
||||||
``/Library/Frameworks``, as had been the case on older releases
|
``/Library/Frameworks``, as had been the case on older releases
|
||||||
of macOS. If a macOS SDK is explicitly configured, by using
|
of macOS. If a macOS SDK is explicitly configured, by using
|
||||||
``--enable-universalsdk=`` or ``-isysroot``, only the SDK itself is
|
:option:`--enable-universalsdk` or ``-isysroot``, only the SDK itself is
|
||||||
searched. The default behavior can still be overridden with
|
searched. The default behavior can still be overridden with
|
||||||
``--with-tcltk-includes`` and ``--with-tcltk-libs``.
|
:option:`--with-tcltk-includes` and :option:`--with-tcltk-libs`.
|
||||||
(Contributed by Ned Deily in :issue:`34956`.)
|
(Contributed by Ned Deily in :issue:`34956`.)
|
||||||
|
|
||||||
* Python can now be built for Windows 10 ARM64.
|
* Python can now be built for Windows 10 ARM64.
|
||||||
|
|
Loading…
Reference in New Issue