Introduction to Python 3.11

The Python 3.11 package contains an older version of the Python development environment. This is only needed for building specific programs in BLFS that have not updated their build systems to support Python-3.12.2 (e.g Firefox-115.8.0, Thunderbird-115.8.0, seamonkey-2.53.18, and qtwebengine-5.15.17).



Do NOT install this package if you are not installing one of the above programs.

This package is known to build and work properly using an LFS 12.1 platform.

Package Information

Python 3.11 Dependencies


Installation of Python 3.11

Install Python 3.11 by running the following commands:

CXX="/usr/bin/g++"                     \
./configure --prefix=/opt/python3.11   \
            --disable-shared           \
            --with-system-expat        &&

Since this package is only used in very limited situations, tests are not recommended.

Now, as the root user:

make install

Command Explanations

CXX="/usr/bin/g++" ./configure ...: Avoid an annoying message during configuration.

--prefix=/opt/python3.11: This installs python 3.11 into /opt in order to avoid conflicts with the system version of python, and allows for easy removal/isolation once programs update to python3.12 or later.

--disable-shared: This switch disables building shared libraries. Since all the packages that need python-3.11 have built in modules and don't directly link to python, it is safe to turn off shared library support.

--with-system-expat: This switch enables linking against the system version of Expat.


Installed Programs: python3.11
Installed Libraries: libpython3.11.a
Installed Directories: /opt/python3.11/include/python3.11, and /opt/python3.11/lib/python3.11,

Short Descriptions


is a version-specific name for the python program